summaryrefslogtreecommitdiffstats
path: root/contrib/binutils/include/elf
diff options
context:
space:
mode:
authorobrien <obrien@FreeBSD.org>2001-05-28 05:21:37 +0000
committerobrien <obrien@FreeBSD.org>2001-05-28 05:21:37 +0000
commit328e45595b12375b6d16a846069507d25086abdb (patch)
treeae2a6f4f4987889b7bd2af7bdf0b86fa580df011 /contrib/binutils/include/elf
parent7fbb72605a1c3bcb81f8b6bb6297ffef30f84335 (diff)
downloadFreeBSD-src-328e45595b12375b6d16a846069507d25086abdb.zip
FreeBSD-src-328e45595b12375b6d16a846069507d25086abdb.tar.gz
Import of GNU Binutils version 2.11.0.
Believe it or not, this is heavily stripped down.
Diffstat (limited to 'contrib/binutils/include/elf')
-rw-r--r--contrib/binutils/include/elf/ChangeLog268
-rw-r--r--contrib/binutils/include/elf/alpha.h5
-rw-r--r--contrib/binutils/include/elf/arc.h24
-rw-r--r--contrib/binutils/include/elf/arm.h112
-rw-r--r--contrib/binutils/include/elf/avr.h4
-rw-r--r--contrib/binutils/include/elf/common.h94
-rw-r--r--contrib/binutils/include/elf/cris.h47
-rw-r--r--contrib/binutils/include/elf/d10v.h4
-rw-r--r--contrib/binutils/include/elf/d30v.h4
-rw-r--r--contrib/binutils/include/elf/fr30.h5
-rw-r--r--contrib/binutils/include/elf/hppa.h577
-rw-r--r--contrib/binutils/include/elf/i370.h2
-rw-r--r--contrib/binutils/include/elf/i386.h5
-rw-r--r--contrib/binutils/include/elf/i860.h66
-rw-r--r--contrib/binutils/include/elf/i960.h5
-rw-r--r--contrib/binutils/include/elf/ia64.h190
-rw-r--r--contrib/binutils/include/elf/internal.h5
-rw-r--r--contrib/binutils/include/elf/m32r.h5
-rw-r--r--contrib/binutils/include/elf/m68hc11.h42
-rw-r--r--contrib/binutils/include/elf/m68k.h5
-rw-r--r--contrib/binutils/include/elf/mcore.h5
-rw-r--r--contrib/binutils/include/elf/mips.h17
-rw-r--r--contrib/binutils/include/elf/mn10200.h4
-rw-r--r--contrib/binutils/include/elf/mn10300.h5
-rw-r--r--contrib/binutils/include/elf/pj.h5
-rw-r--r--contrib/binutils/include/elf/ppc.h16
-rw-r--r--contrib/binutils/include/elf/reloc-macros.h44
-rw-r--r--contrib/binutils/include/elf/sh.h17
-rw-r--r--contrib/binutils/include/elf/sparc.h5
-rw-r--r--contrib/binutils/include/elf/v850.h8
-rw-r--r--contrib/binutils/include/elf/x86-64.h46
31 files changed, 1251 insertions, 390 deletions
diff --git a/contrib/binutils/include/elf/ChangeLog b/contrib/binutils/include/elf/ChangeLog
index ba8bf9f..05e73b8 100644
--- a/contrib/binutils/include/elf/ChangeLog
+++ b/contrib/binutils/include/elf/ChangeLog
@@ -1,15 +1,130 @@
-2000-10-14 Philip Blundell <philb@gnu.org>
+2001-01-11 Peter Targett <peter.targett@arccores.com>
- From 2000-07-19 H.J. Lu <hjl@gnu.org>
+ * arc.h (E_ARC_MACH_ARC5, E_ARC_MACH_ARC6, E_ARC_MACH_ARC7,
+ E_ARC_MACH_ARC8): New definitions for cpu types.
+
+ * common.h (EM_ARC): Change comment.
+
+2000-12-12 Nick Clifton <nickc@redhat.com>
+
+ * mips.h: Fix formatting.
+
+2000-12-11 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h (DT_HP_*): Define relative to OLD_DT_LOOS for hpux
+ compatibility.
+
+2000-10-16 Chris Demetriou <cgd@sibyte.com>
+
+ * mips.h (E_MIPS_ARCH_32): New constant.
+ (E_MIPS_MACH_MIPS32, E_MIPS_MACH_MIPS32_4K): Replace the
+ former with the latter.
+
+ * mips.h (E_MIPS_ARCH_5, E_MIPS_ARCH_64): New definitions.
+
+ * mips.h (E_MIPS_MACH_SB1): New constant.
+
+2000-11-30 Jan Hubicka <jh@suse.cz>
+
+ * common.h (EM_X86_64): New macro.
+ * x86-64.h: New file.
+
+2000-11-27 Hans-Peter Nilsson <hp@axis.com>
+
+ * common.h (e_machine numbers): Clarify comments to describe how
+ EM_* constants are assigned. Move EM_PJ from official section to
+ ad-hoc section.
+ (EM_CRIS): Correct comment to match official description.
+ (EM_MMIX): Ditto.
+
+2000-11-22 Nick Clifton <nickc@redhat.com>
+
+ * common.h (EM_JAVELIN): New machine number.
+ (EM_FIREPATH): New machine number.
+ (EM_ZSP): New machine number.
+ (EM_MMIX): New machine number.
+ (EM_HUANY): New machine number.
+ (EM_PRISM): New machine number.
+ (SHT_GROUP): New section type.
+ (SHT_SYMTAB_SHNDX): New section type.
+ (SHF_GROUP): New section flag.
+ (SHN_XINDEX): New section index.
+ (GRP_COMDAT): New section group flag.
+
+2000-11-20 H.J. Lu <hjl@gnu.org>
+
+ * common.h (ELFOSABI_MONTEREY): Renamed to ...
+ (ELFOSABI_AIX): This.
+
+2000-11-16 Richard Henderson <rth@redhat.com>
+
+ Update relocations per August psABI docs.
+ * ia64.h (R_IA64_SEGBASE): Remove.
+ (R_IA64_LTV*): Renumber to 0x74 to 0x77.
+ (R_IA64_EPLTMSB, R_IA64_EPLTLSB): Remove.
+ (R_IA64_TPREL14, R_IA64_TPREL64I): New.
+ (R_IA64_DTPMOD*): New.
+ (R_IA64_DTPREL*): New.
+
+2000-09-29 Hans-Peter Nilsson <hp@axis.com>
+
+ * cris.h (EF_CRIS_UNDERSCORE): New.
+
+2000-09-27 Alan Modra <alan@linuxcare.com.au>
+
+ * hppa.h (R_PARISC_DIR14F): Add.
+
+2000-09-14 Alexandre Oliva <aoliva@redhat.com>
+
+ * sh.h (R_SH_GOT32, R_SH_PLT32, R_SH_COPY, R_SH_GLOB_DAT,
+ R_SH_JMP_SLOT, R_SH_RELATIVE, R_SH_GOTOFF, R_SH_GOTPC): Change
+ numbers to the range from 160 to 167.
+ (R_SH_FIRST_INVALID_RELOC): Adjust.
+ (R_SH_FIRST_INVALID_RELOC_2, R_SH_LAST_INVALID_RELOC_2):
+ New relocs to fill in the gap.
+
+2000-09-13 Anders Norlander <anorland@acc.umu.se>
+
+ * mips.h (E_MIPS_MACH_4K): New define.
+
+2000-09-05 Alan Modra <alan@linuxcare.com.au>
+
+ * hppa.h: Fix a comment.
+ (R_PARISC_PCREL12F): Define.
+ (R_PARISC_GNU_VTENTRY): Define.
+ (R_PARISC_GNU_VTINHERIT): Define.
+
+2000-09-01 Alexandre Oliva <aoliva@redhat.com>
+
+ * sh.h (R_SH_GOT32, R_SH_PLT32, R_SH_COPY, R_SH_GLOB_DAT,
+ R_SH_JMP_SLOT, R_SH_RELATIVE, R_SH_GOTOFF, R_SH_GOTPC): New relocs.
+ (R_SH_FIRST_INVALID_RELOC): Adjust.
+
+2000-08-14 Jim Wilson <wilson@cygnus.com>
+
+ * elf/ia64.h (EF_IA_64_REDUCEDFP, EF_IA_64_CONS_GP,
+ EF_IA_64_NOFUNCDESC_CONS_GP, EF_IA_64_ABSOLUTE): Define.
+
+2000-08-07 Nick Clifton <nickc@cygnus.com>
+
+ * ppc.h: Remove spurious CYGNUS LOCAL comments.
+ * v850.h: Likewise.
+
+2000-07-20 Hans-Peter Nilsson <hp@axis.com>
+
+ common.h (EM_CRIS): New machine number.
+ cris.h: New file.
+
+2000-07-19 H.J. Lu <hjl@gnu.org>
* common.h (DF_1_NODEFLIB): Renamed from DF_1_NODEPLIB.
- From 2000-07-19 H.J. Lu <hjl@gnu.org>
+2000-07-19 H.J. Lu <hjl@gnu.org>
* common.h (DT_CHECKSUM): Set to 0x6ffffdf8.
(DTF_1_CONFEXP): It is 0x00000002 as suspected.
- From 2000-07-19 H.J. Lu <hjl@gnu.org>
+2000-07-19 H.J. Lu <hjl@gnu.org>
* common.h (DT_FEATURE): Renamed from DT_FEATURE_1.
(DT_CONFIG): New. From Solaris 8.
@@ -23,16 +138,83 @@
(DT_CHECKSUM): Likewise. FIXME. Check the value on Solaris 8.
(DTF_1_CONFEXP): Likewise.
- From 2000-07-18 H.J. Lu <hjl@gnu.org>
+2000-07-18 H.J. Lu <hjl@gnu.org>
* common.h (DT_FLAGS_1): Renamed from DT_1_FLAGS.
+2000-07-12 Alan Modra <alan@linuxcare.com.au>
+
+ * internal.h (struct elf_internal_sym): Update comment for st_other.
+
+2000-07-10 Alan Modra <alan@linuxcare.com.au>
+
+ * hppa.h: Add comments to all the relocs.
+
+2000-06-26 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * avr.h (E_AVR_MACH_AVR5): Define.
+
+2000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
+
+ * m68hc11.h: New file, definitions for the Motorola 68hc11.
+
+2000-06-06 Alan Modra <alan@linuxcare.com.au>
+
+ * reloc-macros.h (START_RELOC_NUMBERS): Don't define initial dummy
+ -1 valued enum.
+ (RELOC_NUMBER, FAKE_RELOC, EMPTY_RELOC): Append rather than
+ prepend comma.
+ (END_RELOC_NUMBERS): Give macro an arg to define as last enum.
+
+ * alpha.h (R_ALPHA_max): Define via END_RELOC_NUMBERS rather than
+ with EMPTY_RELOC.
+ * arc.h (R_ARC_max): Likewise.
+ * avr.h (R_AVR_max): Likewise.
+ * fr30.h (R_FR30_max): Likewise.
+ * hppa.h (R_PARISC_UNIMPLEMENTED): Likewise.
+ * i960.h (R_960_max): Likewise.
+ * m32r.h (R_M32R_max): Likewise.
+ * m68k.h (R_68K_max): Likewise.
+ * mcore.h (R_MCORE_max): Likewise.
+ * mn10300.h (R_MN10300_MAX): Likewise.
+ * pj.h (R_PJ_max): Likewise.
+ * ppc.h (R_PPC_max): Likewise.
+ * sh.h (R_SH_max): Likewise.
+ * sparc.h (R_SPARC_max): Likewise.
+ * v850.h (R_V850_max): Likewise.
+
+ * arm.h (R_ARM_max): Define via END_RELOC_NUMBERS.
+ * d10v.h (R_D10V_max): Likewise.
+ * d30v.h (R_D30V_max): Likewise.
+ * ia64.h (R_IA64_max): Likewise.
+ * mips.h (R_MIPS_maxext): Likewise.
+ * mn10200.h (R_MN10200_max): Likewise.
+
+ * i386.h (R_386_max): Remove old RELOC_NUMBER definition, and
+ define via END_RELOC_NUMBERS.
+
+2000-06-03 Alan Modra <alan@linuxcare.com.au>
+
+ * reloc-macros.h (START_RELOC_NUMBERS): Fix name clash for
+ !__STDC__ case.
+ (RELOC_NUMBER): Use ansi stringify if ALMOST_STDC defined.
+
+2000-05-22 Richard Henderson <rth@cygnus.com>
+
+ * ia64.h (R_IA64_PCREL60B, R_IA64_PCREL21BI): New.
+ (R_IA64_PCREL22, R_IA64_PCREL64I): New.
+
2000-05-02 H.J. Lu <hjl@gnu.org>
* common.h (ELFOSABI_NONE): Renamed from ELFOSABI_SYSV.
(ELFOSABI_MODESTO): Defined.
(ELFOSABI_OPENBSD): Likewise.
+Fri Apr 21 13:20:53 2000 Richard Henderson <rth@cygnus.com>
+ David Mosberger <davidm@hpl.hp.com>
+
+ * ia64.h: New file.
+
2000-04-14 H.J. Lu <hjl@gnu.org>
* common.h (ELFOSABI_TRUE64): Renamed to ELFOSABI_TRU64.
@@ -47,6 +229,26 @@
(ELFOSABI_FREEBSD): Likewise.
(ELFOSABI_TRUE64): Likewise.
+2000-04-07 Nick Clifton <nickc@cygnus.com>
+
+ * arm-oabi.h: Delete.
+ * arm.h: Merge in definitions of old reloc numbers from
+ arm-oabi.h.
+
+2000-04-06 Nick Clifton <nickc@cygnus.com>
+
+ * arm.h (EF_ARM_SYMSARESORTED): Define.
+ (EF_ARM_EABIMASK): Define.
+ (EF_ARM_EABI_VERSION): Define.
+ (EF_ARM_EABI_UNKNOWN): Define.
+ (EF_ARM_EABI_VER1): Define.
+ (PF_ARM_PI): Define.
+ (PF_ARM_ABS): Define.
+
+Wed Apr 5 22:08:59 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.h (R_SH_LOOP_START, R_SH_LOOP_END): New RELOC_NUMBERs.
+
2000-03-27 Denis Chertykov <denisc@overta.ru>
* avr.h: New file. AVR ELF support for BFD.
@@ -55,8 +257,8 @@
2000-03-10 Geoffrey Keating <geoffk@cygnus.com>
* mips.h: Add R_MIPS_GNU_REL_HI16, R_MIPS_GNU_REL_LO16,
- R_MIPS_GNU_REL16_S2, R_MIPS_PC64 and R_MIPS_PC32 relocation
- numbers.
+ R_MIPS_GNU_REL16_S2, R_MIPS_PC64 and R_MIPS_PC32 relocation
+ numbers.
2000-02-23 Linas Vepstas <linas@linas.org>
@@ -85,7 +287,7 @@ Thu Feb 17 00:18:33 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
2000-01-27 Thomas de Lellis <tdel@windriver.com>
- * arm.h (STT_ARM_TFUNC): Define in terms of STT_LOPROC.
+ * arm.h (STT_ARM_TFUNC): Define in terms of STT_LOPROC.
(STT_ARM_16BIT): New flag. Denotes a label that was defined in
Thumb block but was does not identify a function.
@@ -112,12 +314,12 @@ Thu Feb 17 00:18:33 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
2000-01-10 Egor Duda <deo@logos-m.ru>
- * common.h (NT_WIN32PSTATUS): Define. (cygwin elf core dumps).
+ * common.h (NT_WIN32PSTATUS): Define. (cygwin elf core dumps).
1999-12-28 Nick Clifton <nickc@cygnus.com>
* mips.h (STO_*): Redefine in terms of STV_* values now in
- common.h.
+ common.h.
1999-12-27 Nick Clifton <nickc@cygnus.com>
@@ -175,7 +377,7 @@ Thu Feb 17 00:18:33 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
* i960.h (reloc-macros.h): Include using relative dir elf/.
* i386.h (reloc-macros.h): Include using relative dir elf/.
* hppa.h (reloc-macros.h): Include using relative dir elf/.
-
+
1999-12-07 Jim Blandy <jimb@cygnus.com>
* common.h (NT_PRXFPREG): New definition.
@@ -284,9 +486,9 @@ Wed Jun 9 15:16:34 1999 Jeffrey A Law (law@cygnus.com)
* mcore.h (R_MCORE_RELATIVE): Define.
-999-05-05 Catherine Moore <clm@cygnus.com>
+1999-05-05 Catherine Moore <clm@cygnus.com>
- * m68k.h (EF_CPU32): Define.
+ * m68k.h (EF_CPU32): Define.
1999-04-21 Nick Clifton <nickc@cygnus.com>
@@ -344,10 +546,10 @@ Thu Feb 18 18:58:26 1999 Ian Lance Taylor <ian@cygnus.com>
Mon Feb 1 11:33:56 1999 Catherine Moore <clm@cygnus.com>
- * arm.h: Renumber relocs to conform to standard.
- (EF_NEW_ABI): Define.
- (EF_OLD_ABI): Define.
- * arm-oabi.h: New file.
+ * arm.h: Renumber relocs to conform to standard.
+ (EF_NEW_ABI): Define.
+ (EF_OLD_ABI): Define.
+ * arm-oabi.h: New file.
1999-01-28 Nick Clifton <nickc@cygnus.com>
@@ -384,7 +586,7 @@ Tue Nov 10 15:12:28 1998 Nick Clifton <nickc@cygnus.com>
Tue Nov 10 15:17:28 1998 Catherine Moore <clm@cygnus.com>
- * d10v.h: Add vtable relocs.
+ * d10v.h: Add vtable relocs.
Wed Nov 4 15:56:50 1998 Nick Clifton <nickc@cygnus.com>
@@ -394,9 +596,9 @@ Wed Nov 4 15:56:50 1998 Nick Clifton <nickc@cygnus.com>
Fri Oct 30 11:54:15 1998 Catherine Moore <clm@cygnus.com>
- From Philip Blundell <pb@nexus.co.uk>:
- * arm.h (R_ARM_COPY, et al.): New relocs, used by Linux for PIC.
- (EF_ALIGN8): New flag.
+ From Philip Blundell <pb@nexus.co.uk>:
+ * arm.h (R_ARM_COPY, et al.): New relocs, used by Linux for PIC.
+ (EF_ALIGN8): New flag.
Tue Oct 20 11:19:50 1998 Ian Lance Taylor <ian@cygnus.com>
@@ -404,25 +606,25 @@ Tue Oct 20 11:19:50 1998 Ian Lance Taylor <ian@cygnus.com>
Mon Oct 19 20:24:11 1998 Catherine Moore <clm@cygnus.com>
- * sh.h: Add vtable relocs.
+ * sh.h: Add vtable relocs.
Mon Oct 19 01:44:42 1998 Felix Lee <flee@cygnus.com>
* common.h (NT_PSTATUS, NT_FPREGS, NT_PSINFO,
- NT_LWPSTATUS,NT_LWPSINFO): added.
+ NT_LWPSTATUS,NT_LWPSINFO): added.
* internal.h (Elf_Internal_Note): new structure members.
Fri Oct 16 14:11:25 1998 Catherine Moore <clm@cygnus.com>
- * m32r.h: Add vtable relocs.
+ * m32r.h: Add vtable relocs.
Tue Oct 6 09:22:22 1998 Catherine Moore <clm@cygnus.com>
- * sparc.h: Add vtable relocs.
+ * sparc.h: Add vtable relocs.
Mon Oct 5 09:39:22 1998 Catherine Moore <clm@cygnus.com>
- * v850.h: Add vtable relocs.
+ * v850.h: Add vtable relocs.
Sun Oct 4 21:17:51 1998 Ian Lance Taylor <ian@cygnus.com>
@@ -430,7 +632,7 @@ Sun Oct 4 21:17:51 1998 Ian Lance Taylor <ian@cygnus.com>
Mon Sep 21 12:24:44 1998 Catherine Moore <clm@cygnus.com>
- * i386.h: Change vtable reloc numbers.
+ * i386.h: Change vtable reloc numbers.
Sun Sep 20 00:54:22 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
@@ -438,12 +640,12 @@ Sun Sep 20 00:54:22 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.
Tue Sep 15 09:56:49 CDT 1998 Catherine Moore <clm@cygnus.com>
- * arm.h: Add vtable relocs.
+ * arm.h: Add vtable relocs.
Mon Aug 31 11:25:27 1998 Catherine Moore <clm@cygnus.com>
- * arm.h: Define STT_ARM_TFUNC. Remove ST_THUMB_xxxx
- definitions.
+ * arm.h: Define STT_ARM_TFUNC. Remove ST_THUMB_xxxx
+ definitions.
Sat Aug 29 22:25:51 1998 Richard Henderson <rth@cygnus.com>
@@ -460,7 +662,7 @@ Sat Aug 29 22:25:51 1998 Richard Henderson <rth@cygnus.com>
Sun Aug 9 20:26:49 CDT 1998 Catherine Moore <clm@cygnus.com>
- * arm.h: Add ST_THUMB definitions.
+ * arm.h: Add ST_THUMB definitions.
Wed Aug 5 15:52:35 1998 Nick Clifton <nickc@cygnus.com>
@@ -476,7 +678,7 @@ Wed Aug 5 15:52:35 1998 Nick Clifton <nickc@cygnus.com>
Fri Jul 31 10:01:40 1998 Catherine Moore <clm@cygnus.com>
- * arm.h: Add R_ARM_THM_PC9 relocation.
+ * arm.h: Add R_ARM_THM_PC9 relocation.
1998-07-30 16:25 Ulrich Drepper <drepper@cygnus.com>
@@ -496,7 +698,7 @@ Fri Jul 24 11:22:06 1998 Jeffrey A Law (law@cygnus.com)
Wed Jul 22 19:29:00 Catherine Moore <clm@cygnus.com>
- * arm.h: Rename relocations.
+ * arm.h: Rename relocations.
1998-07-22 Ulrich Drepper <drepper@cygnus.com>
diff --git a/contrib/binutils/include/elf/alpha.h b/contrib/binutils/include/elf/alpha.h
index 1ae9d5e..d353434 100644
--- a/contrib/binutils/include/elf/alpha.h
+++ b/contrib/binutils/include/elf/alpha.h
@@ -1,5 +1,5 @@
/* ALPHA ELF support for BFD.
- Copyright (C) 1996, 1998 Free Software Foundation, Inc.
+ Copyright (C) 1996, 98, 2000 Free Software Foundation, Inc.
By Eric Youngdale, <eric@aib.com>. No processor supplement available
for this platform.
@@ -102,7 +102,6 @@ START_RELOC_NUMBERS (elf_alpha_reloc_type)
RELOC_NUMBER (R_ALPHA_JMP_SLOT, 26) /* Create PLT entry */
RELOC_NUMBER (R_ALPHA_RELATIVE, 27) /* Adjust by program base */
- EMPTY_RELOC (R_ALPHA_max)
-END_RELOC_NUMBERS
+END_RELOC_NUMBERS (R_ALPHA_max)
#endif /* _ELF_ALPHA_H */
diff --git a/contrib/binutils/include/elf/arc.h b/contrib/binutils/include/elf/arc.h
index 334b55f..a8d0a74 100644
--- a/contrib/binutils/include/elf/arc.h
+++ b/contrib/binutils/include/elf/arc.h
@@ -1,5 +1,5 @@
/* ARC ELF support for BFD.
- Copyright (C) 1995, 1997 Free Software Foundation, Inc.
+ Copyright (C) 1995, 97, 98, 2000 Free Software Foundation, Inc.
Contributed by Doug Evans, (dje@cygnus.com)
This file is part of BFD, the Binary File Descriptor library.
@@ -26,29 +26,31 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "elf/reloc-macros.h"
/* Relocations. */
+
START_RELOC_NUMBERS (elf_arc_reloc_type)
RELOC_NUMBER (R_ARC_NONE, 0)
RELOC_NUMBER (R_ARC_32, 1)
RELOC_NUMBER (R_ARC_B26, 2)
RELOC_NUMBER (R_ARC_B22_PCREL, 3)
- EMPTY_RELOC (R_ARC_max)
-END_RELOC_NUMBERS
+END_RELOC_NUMBERS (R_ARC_max)
/* Processor specific flags for the ELF header e_flags field. */
/* Four bit ARC machine type field. */
-#define EF_ARC_MACH 0x0000000f
+
+#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. */
+#define E_ARC_MACH_ARC5 0
+#define E_ARC_MACH_ARC6 1
+#define E_ARC_MACH_ARC7 2
+#define E_ARC_MACH_ARC8 3
+
+/* Leave bits 0xf0 alone in case we ever have more than 16 cpu types. */
/* File contains position independent code. */
-#define EF_ARC_PIC 0x00000100
+
+#define EF_ARC_PIC 0x00000100
#endif /* _ELF_ARC_H */
diff --git a/contrib/binutils/include/elf/arm.h b/contrib/binutils/include/elf/arm.h
index 4d3405d..0499251 100644
--- a/contrib/binutils/include/elf/arm.h
+++ b/contrib/binutils/include/elf/arm.h
@@ -34,6 +34,14 @@
#define EF_OLD_ABI 0x100
#define EF_SOFT_FLOAT 0x200
+/* Other constants defined in the ARM ELF spec. version A-08. */
+#define EF_ARM_SYMSARESORTED 0x04 /* NB conflicts with EF_INTERWORK */
+#define EF_ARM_EABIMASK 0xFF000000
+
+#define EF_ARM_EABI_VERSION(flags) ((flags) & EF_ARM_EABIMASK)
+#define EF_ARM_EABI_UNKNOWN 0x00000000
+#define EF_ARM_EABI_VER1 0x01000000
+
/* Local aliases for some flags to match names used by COFF port. */
#define F_INTERWORK EF_INTERWORK
#define F_APCS26 EF_APCS_26
@@ -51,49 +59,71 @@
/* ARM-specific program header flags. */
#define PF_ARM_SB 0x10000000 /* Segment contains the location addressed by the static base. */
+#define PF_ARM_PI 0x20000000 /* Segment is position-independent. */
+#define PF_ARM_ABS 0x40000000 /* Segment must be loaded at its base address. */
/* Relocation types. */
+
START_RELOC_NUMBERS (elf_arm_reloc_type)
- RELOC_NUMBER (R_ARM_NONE, 0)
- RELOC_NUMBER (R_ARM_PC24, 1)
- RELOC_NUMBER (R_ARM_ABS32, 2)
- RELOC_NUMBER (R_ARM_REL32, 3)
- RELOC_NUMBER (R_ARM_PC13, 4)
- RELOC_NUMBER (R_ARM_ABS16, 5)
- RELOC_NUMBER (R_ARM_ABS12, 6)
- RELOC_NUMBER (R_ARM_THM_ABS5, 7)
- RELOC_NUMBER (R_ARM_ABS8, 8)
- RELOC_NUMBER (R_ARM_SBREL32, 9)
- RELOC_NUMBER (R_ARM_THM_PC22, 10)
- RELOC_NUMBER (R_ARM_THM_PC8, 11)
- RELOC_NUMBER (R_ARM_AMP_VCALL9, 12)
- RELOC_NUMBER (R_ARM_SWI24, 13)
- RELOC_NUMBER (R_ARM_THM_SWI8, 14)
- RELOC_NUMBER (R_ARM_XPC25, 15)
- RELOC_NUMBER (R_ARM_THM_XPC22, 16)
- RELOC_NUMBER (R_ARM_COPY, 20) /* copy symbol at runtime */
- RELOC_NUMBER (R_ARM_GLOB_DAT, 21) /* create GOT entry */
- RELOC_NUMBER (R_ARM_JUMP_SLOT, 22) /* create PLT entry */
- RELOC_NUMBER (R_ARM_RELATIVE, 23) /* adjust by program base */
- RELOC_NUMBER (R_ARM_GOTOFF, 24) /* 32 bit offset to GOT */
- RELOC_NUMBER (R_ARM_GOTPC, 25) /* 32 bit PC relative offset to GOT */
- RELOC_NUMBER (R_ARM_GOT32, 26) /* 32 bit GOT entry */
- RELOC_NUMBER (R_ARM_PLT32, 27) /* 32 bit PLT address */
- FAKE_RELOC (FIRST_INVALID_RELOC1, 28)
- FAKE_RELOC (LAST_INVALID_RELOC1, 99)
- RELOC_NUMBER (R_ARM_GNU_VTENTRY, 100)
- RELOC_NUMBER (R_ARM_GNU_VTINHERIT, 101)
- RELOC_NUMBER (R_ARM_THM_PC11, 102) /* Cygnus extension to abi: Thumb unconditional branch */
- RELOC_NUMBER (R_ARM_THM_PC9, 103) /* Cygnus extension to abi: Thumb conditional branch */
+ RELOC_NUMBER (R_ARM_NONE, 0)
+ RELOC_NUMBER (R_ARM_PC24, 1)
+ RELOC_NUMBER (R_ARM_ABS32, 2)
+ RELOC_NUMBER (R_ARM_REL32, 3)
+#ifdef OLD_ARM_ABI
+ RELOC_NUMBER (R_ARM_ABS8, 4)
+ RELOC_NUMBER (R_ARM_ABS16, 5)
+ RELOC_NUMBER (R_ARM_ABS12, 6)
+ RELOC_NUMBER (R_ARM_THM_ABS5, 7)
+ RELOC_NUMBER (R_ARM_THM_PC22, 8)
+ RELOC_NUMBER (R_ARM_SBREL32, 9)
+ RELOC_NUMBER (R_ARM_AMP_VCALL9, 10)
+ RELOC_NUMBER (R_ARM_THM_PC11, 11) /* Cygnus extension to abi: Thumb unconditional branch. */
+ RELOC_NUMBER (R_ARM_THM_PC9, 12) /* Cygnus extension to abi: Thumb conditional branch. */
+ RELOC_NUMBER (R_ARM_GNU_VTINHERIT, 13)
+ RELOC_NUMBER (R_ARM_GNU_VTENTRY, 14)
+#else /* not OLD_ARM_ABI */
+ RELOC_NUMBER (R_ARM_PC13, 4)
+ RELOC_NUMBER (R_ARM_ABS16, 5)
+ RELOC_NUMBER (R_ARM_ABS12, 6)
+ RELOC_NUMBER (R_ARM_THM_ABS5, 7)
+ RELOC_NUMBER (R_ARM_ABS8, 8)
+ RELOC_NUMBER (R_ARM_SBREL32, 9)
+ RELOC_NUMBER (R_ARM_THM_PC22, 10)
+ RELOC_NUMBER (R_ARM_THM_PC8, 11)
+ RELOC_NUMBER (R_ARM_AMP_VCALL9, 12)
+ RELOC_NUMBER (R_ARM_SWI24, 13)
+ RELOC_NUMBER (R_ARM_THM_SWI8, 14)
+ RELOC_NUMBER (R_ARM_XPC25, 15)
+ RELOC_NUMBER (R_ARM_THM_XPC22, 16)
+#endif /* not OLD_ARM_ABI */
+ RELOC_NUMBER (R_ARM_COPY, 20) /* Copy symbol at runtime. */
+ RELOC_NUMBER (R_ARM_GLOB_DAT, 21) /* Create GOT entry. */
+ RELOC_NUMBER (R_ARM_JUMP_SLOT, 22) /* Create PLT entry. */
+ RELOC_NUMBER (R_ARM_RELATIVE, 23) /* Adjust by program base. */
+ RELOC_NUMBER (R_ARM_GOTOFF, 24) /* 32 bit offset to GOT. */
+ RELOC_NUMBER (R_ARM_GOTPC, 25) /* 32 bit PC relative offset to GOT. */
+ RELOC_NUMBER (R_ARM_GOT32, 26) /* 32 bit GOT entry. */
+ RELOC_NUMBER (R_ARM_PLT32, 27) /* 32 bit PLT address. */
+#ifdef OLD_ARM_ABI
+ FAKE_RELOC (FIRST_INVALID_RELOC, 28)
+ FAKE_RELOC (LAST_INVALID_RELOC, 249)
+#else /* not OLD_ARM_ABI */
+ FAKE_RELOC (FIRST_INVALID_RELOC1, 28)
+ FAKE_RELOC (LAST_INVALID_RELOC1, 99)
+ RELOC_NUMBER (R_ARM_GNU_VTENTRY, 100)
+ RELOC_NUMBER (R_ARM_GNU_VTINHERIT, 101)
+ RELOC_NUMBER (R_ARM_THM_PC11, 102) /* Cygnus extension to abi: Thumb unconditional branch. */
+ RELOC_NUMBER (R_ARM_THM_PC9, 103) /* Cygnus extension to abi: Thumb conditional branch. */
FAKE_RELOC (FIRST_INVALID_RELOC2, 104)
FAKE_RELOC (LAST_INVALID_RELOC2, 248)
- RELOC_NUMBER (R_ARM_RXPC25, 249)
- RELOC_NUMBER (R_ARM_RSBREL32, 250)
- RELOC_NUMBER (R_ARM_THM_RPC22, 251)
- RELOC_NUMBER (R_ARM_RREL32, 252)
- RELOC_NUMBER (R_ARM_RABS32, 253)
- RELOC_NUMBER (R_ARM_RPC24, 254)
- RELOC_NUMBER (R_ARM_RBASE, 255)
-END_RELOC_NUMBERS
-
-#endif
+ RELOC_NUMBER (R_ARM_RXPC25, 249)
+#endif /* not OLD_ARM_ABI */
+ RELOC_NUMBER (R_ARM_RSBREL32, 250)
+ RELOC_NUMBER (R_ARM_THM_RPC22, 251)
+ RELOC_NUMBER (R_ARM_RREL32, 252)
+ RELOC_NUMBER (R_ARM_RABS32, 253)
+ RELOC_NUMBER (R_ARM_RPC24, 254)
+ RELOC_NUMBER (R_ARM_RBASE, 255)
+END_RELOC_NUMBERS (R_ARM_max)
+
+#endif /* _ELF_ARM_H */
diff --git a/contrib/binutils/include/elf/avr.h b/contrib/binutils/include/elf/avr.h
index 1527455..09cdf7b 100644
--- a/contrib/binutils/include/elf/avr.h
+++ b/contrib/binutils/include/elf/avr.h
@@ -30,6 +30,7 @@ along with this program; if not, write to the Free Software Foundation, Inc.,
#define E_AVR_MACH_AVR2 2
#define E_AVR_MACH_AVR3 3
#define E_AVR_MACH_AVR4 4
+#define E_AVR_MACH_AVR5 5
/* Relocations. */
START_RELOC_NUMBERS (elf_avr_reloc_type)
@@ -52,7 +53,6 @@ START_RELOC_NUMBERS (elf_avr_reloc_type)
RELOC_NUMBER (R_AVR_HI8_LDI_PM_NEG, 16)
RELOC_NUMBER (R_AVR_HH8_LDI_PM_NEG, 17)
RELOC_NUMBER (R_AVR_CALL, 18)
- EMPTY_RELOC (R_AVR_max)
-END_RELOC_NUMBERS
+END_RELOC_NUMBERS (R_AVR_max)
#endif /* _ELF_AVR_H */
diff --git a/contrib/binutils/include/elf/common.h b/contrib/binutils/include/elf/common.h
index b290853..d127b9c 100644
--- a/contrib/binutils/include/elf/common.h
+++ b/contrib/binutils/include/elf/common.h
@@ -64,21 +64,21 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define ELFOSABI_LINUX 3 /* GNU/Linux */
#define ELFOSABI_HURD 4 /* GNU/Hurd */
#define ELFOSABI_SOLARIS 6 /* Solaris */
-#define ELFOSABI_MONTEREY 7 /* Monterey */
+#define ELFOSABI_AIX 7 /* AIX */
#define ELFOSABI_IRIX 8 /* IRIX */
#define ELFOSABI_FREEBSD 9 /* FreeBSD */
#define ELFOSABI_TRU64 10 /* TRU64 UNIX */
#define ELFOSABI_MODESTO 11 /* Novell Modesto */
#define ELFOSABI_OPENBSD 12 /* OpenBSD */
#define ELFOSABI_STANDALONE 255 /* Standalone (embedded) application */
-#define ELFOSABI_ARM 97 /* ARM */
+#define ELFOSABI_ARM 97 /* ARM */
#define EI_ABIVERSION 8 /* ABI version */
#define EI_PAD 9 /* Start of padding bytes */
-/* Values for e_type, which identifies the object file type */
+/* Values for e_type, which identifies the object file type. */
#define ET_NONE 0 /* No file type */
#define ET_REL 1 /* Relocatable file */
@@ -90,7 +90,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define ET_LOPROC 0xFF00 /* Processor-specific */
#define ET_HIPROC 0xFFFF /* Processor-specific */
-/* Values for e_machine, which identifies the architecture */
+/* Values for e_machine, which identifies the architecture. These numbers
+ are officially assigned by registry@sco.com. See below for a list of
+ ad-hoc numbers used during initial development. */
#define EM_NONE 0 /* No machine */
#define EM_M32 1 /* AT&T WE 32100 */
@@ -98,7 +100,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define EM_386 3 /* Intel 80386 */
#define EM_68K 4 /* Motorola m68k family */
#define EM_88K 5 /* Motorola m88k family */
-#define EM_486 6 /* Intel 80486 */
+#define EM_486 6 /* Intel 80486 *//* Reserved for future use */
#define EM_860 7 /* Intel 80860 */
#define EM_MIPS 8 /* MIPS R3000 (officially, big-endian only) */
#define EM_S370 9 /* IBM System/370 */
@@ -123,7 +125,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define EM_SH 42 /* Hitachi SH */
#define EM_SPARCV9 43 /* SPARC v9 64-bit */
#define EM_TRICORE 44 /* Siemens Tricore embedded processor */
-#define EM_ARC 45 /* Argonaut RISC Core, Argonaut Technologies Inc. */
+#define EM_ARC 45 /* ARC Cores */
#define EM_H8_300 46 /* Hitachi H8/300 */
#define EM_H8_300H 47 /* Hitachi H8/300H */
#define EM_H8S 48 /* Hitachi H8S */
@@ -140,6 +142,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define EM_ME16 59 /* Toyota ME16 processor */
#define EM_ST100 60 /* STMicroelectronics ST100 processor */
#define EM_TINYJ 61 /* Advanced Logic Corp. TinyJ embedded processor */
+#define EM_X86_64 62 /* Advanced Micro Devices X86-64 processor */
#define EM_FX66 66 /* Siemens FX66 microcontroller */
#define EM_ST9PLUS 67 /* STMicroelectronics ST9+ 8/16 bit microcontroller */
@@ -149,10 +152,15 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define EM_68HC08 71 /* Motorola MC68HC08 Microcontroller */
#define EM_68HC05 72 /* Motorola MC68HC05 Microcontroller */
#define EM_SVX 73 /* Silicon Graphics SVx */
-#define EM_ST19 74 /* STMicroelectronics ST19 8-bit microcontroller */
+#define EM_ST19 74 /* STMicroelectronics ST19 8-bit cpu */
#define EM_VAX 75 /* Digital VAX */
-
-#define EM_PJ 99 /* picoJava */
+#define EM_CRIS 76 /* Axis Communications 32-bit embedded processor */
+#define EM_JAVELIN 77 /* Infineon Technologies 32-bit embedded cpu */
+#define EM_FIREPATH 78 /* Element 14 64-bit DSP processor */
+#define EM_ZSP 79 /* LSI Logic's 16-bit DSP processor */
+#define EM_MMIX 80 /* Donald Knuth's educational 64-bit processor */
+#define EM_HUANY 81 /* Harvard's machine-independent format */
+#define EM_PRISM 82 /* SiTera Prism */
/* If it is necessary to assign new unofficial EM_* values, please pick large
random numbers (0x8523, 0xa7f2, etc.) to minimize the chances of collision
@@ -160,7 +168,13 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
NOTE: Do not just increment the most recent number by one.
Somebody else somewhere will do exactly the same thing, and you
- will have a collision. Instead, pick a random number. */
+ will have a collision. Instead, pick a random number.
+
+ Normally, each entity or maintainer responsible for a machine with an
+ unofficial e_machine number should eventually ask registry@sco.com for
+ an officially blessed number to be added to the list above. */
+
+#define EM_PJ 99 /* picoJava */
/* Cygnus PowerPC ELF backend. Written in the absence of an ABI. */
#define EM_CYGNUS_POWERPC 0x9025
@@ -204,12 +218,12 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* See the above comment before you add a new EM_* value here. */
-/* Values for e_version */
+/* Values for e_version. */
#define EV_NONE 0 /* Invalid ELF version */
#define EV_CURRENT 1 /* Current version */
-/* Values for program header, p_type field */
+/* Values for program header, p_type field. */
#define PT_NULL 0 /* Program header table entry unused */
#define PT_LOAD 1 /* Loadable program segment */
@@ -223,7 +237,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define PT_LOPROC 0x70000000 /* Processor-specific */
#define PT_HIPROC 0x7FFFFFFF /* Processor-specific */
-/* Program segment permissions, in program header p_flags field */
+/* Program segment permissions, in program header p_flags field. */
#define PF_X (1 << 0) /* Segment is executable */
#define PF_W (1 << 1) /* Segment is writable */
@@ -232,7 +246,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define PF_MASKOS 0x0FF00000 /* New value, Oct 4, 1999 Draft */
#define PF_MASKPROC 0xF0000000 /* Processor-specific reserved bits */
-/* Values for section header, sh_type field */
+/* Values for section header, sh_type field. */
#define SHT_NULL 0 /* Section header table entry unused */
#define SHT_PROGBITS 1 /* Program specific (private) data */
@@ -247,12 +261,14 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define SHT_SHLIB 10 /* Reserved, unspecified semantics */
#define SHT_DYNSYM 11 /* Dynamic linking symbol table */
-#define SHT_INIT_ARRAY 14 /* Array of pointers to init functions */
-#define SHT_FINI_ARRAY 15 /* Array of pointers to finish functions */
-#define SHT_PREINIT_ARRAY 16 /* Array of pointers to pre-init functions */
+#define SHT_INIT_ARRAY 14 /* Array of ptrs to init functions */
+#define SHT_FINI_ARRAY 15 /* Array of ptrs to finish functions */
+#define SHT_PREINIT_ARRAY 16 /* Array of ptrs to pre-init funcs */
+#define SHT_GROUP 17 /* Section contains a section group */
+#define SHT_SYMTAB_SHNDX 18 /* Indicies for SHN_XINDEX entries */
-#define SHT_LOOS 0x60000000 /* Operating system specific semantics, lo */
-#define SHT_HIOS 0x6fffffff /* Operating system specific semantics, hi */
+#define SHT_LOOS 0x60000000 /* First of OS specific semantics */
+#define SHT_HIOS 0x6fffffff /* Last of OS specific semantics */
/* The next three section types are defined by Solaris, and are named
SHT_SUNW*. We use them in GNU code, so we also define SHT_GNU*
@@ -271,7 +287,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* #define SHT_HIUSER 0x8FFFFFFF *//* Application-specific semantics */
#define SHT_HIUSER 0xFFFFFFFF /* New value, defined in Oct 4, 1999 Draft */
-/* Values for section header, sh_flags field */
+/* Values for section header, sh_flags field. */
#define SHF_WRITE (1 << 0) /* Writable data during execution */
#define SHF_ALLOC (1 << 1) /* Occupies memory during execution */
@@ -280,13 +296,14 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define SHF_STRINGS (1 << 5) /* Contains null terminated character strings */
#define SHF_INFO_LINK (1 << 6) /* sh_info holds section header table index */
#define SHF_LINK_ORDER (1 << 7) /* Preserve section ordering when linking */
-#define SHF_OS_NONCONFORMING (1 << 8) /* OS specifci processing required */
+#define SHF_OS_NONCONFORMING (1 << 8) /* OS specific processing required */
+#define SHF_GROUP (1 << 9) /* Member of a section group */
/* #define SHF_MASKOS 0x0F000000 *//* OS-specific semantics */
#define SHF_MASKOS 0x0FF00000 /* New value, Oct 4, 1999 Draft */
#define SHF_MASKPROC 0xF0000000 /* Processor-specific semantics */
-/* Values of note segment descriptor types for core files. */
+/* Values of note segment descriptor types for core files. */
#define NT_PRSTATUS 1 /* Contains copy of prstatus struct */
#define NT_FPREGSET 2 /* Contains copy of fpregset struct */
@@ -295,7 +312,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define NT_PRXFPREG 0x46e62b7f /* Contains a user_xfpregs_struct; */
/* note name must be "LINUX". */
-/* Note segments for core files on dir-style procfs systems. */
+/* Note segments for core files on dir-style procfs systems. */
#define NT_PSTATUS 10 /* Has a struct pstatus */
#define NT_FPREGS 12 /* Has a struct fpregset */
@@ -311,7 +328,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* These three macros disassemble and assemble a symbol table st_info field,
which contains the symbol binding and symbol type. The STB_ and STT_
- defines identify the binding and type. */
+ defines identify the binding and type. */
#define ELF_ST_BIND(val) (((unsigned int)(val)) >> 4)
#define ELF_ST_TYPE(val) ((val) & 0xF)
@@ -337,7 +354,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define ELF64_ST_VISIBILITY ELF_ST_VISIBILITY
-#define STN_UNDEF 0 /* undefined symbol index */
+#define STN_UNDEF 0 /* Undefined symbol index */
#define STB_LOCAL 0 /* Symbol not visible outside obj */
#define STB_GLOBAL 1 /* Symbol visible outside obj */
@@ -359,7 +376,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define STT_HIPROC 15 /* Application-specific semantics */
/* Special section indices, which may show up in st_shndx fields, among
- other places. */
+ other places. */
#define SHN_UNDEF 0 /* Undefined section reference */
#define SHN_LORESERVE 0xFF00 /* Begin range of reserved indices */
@@ -367,9 +384,10 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define SHN_HIPROC 0xFF1F /* End range of appl-specific */
#define SHN_LOOS 0xFF20 /* OS specific semantics, lo */
#define SHN_HIOS 0xFF3F /* OS specific semantics, hi */
-#define SHN_ABS 0xFFF1 /* Associated symbol is absolute */
-#define SHN_COMMON 0xFFF2 /* Associated symbol is in common */
-#define SHN_HIRESERVE 0xFFFF /* End range of reserved indices */
+#define SHN_ABS 0xFFF1 /* Associated symbol is absolute */
+#define SHN_COMMON 0xFFF2 /* Associated symbol is in common */
+#define SHN_XINDEX 0xFFFF /* Section index it held elsewhere */
+#define SHN_HIRESERVE 0xFFFF /* End range of reserved indices */
/* The following constants control how a symbol may be accessed once it has
become part of an executable or shared library. */
@@ -378,9 +396,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define STV_INTERNAL 1 /* OS specific version of STV_HIDDEN */
#define STV_HIDDEN 2 /* Can only be seen inside currect component */
#define STV_PROTECTED 3 /* Treat as STB_LOCAL inside current component */
-
-/* relocation info handling macros */
+/* Relocation info handling macros. */
#define ELF32_R_SYM(i) ((i) >> 8)
#define ELF32_R_TYPE(i) ((i) & 0xff)
@@ -390,7 +407,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define ELF64_R_TYPE(i) ((i) & 0xffffffff)
#define ELF64_R_INFO(s,t) (((bfd_vma) (s) << 32) + (bfd_vma) (t))
-/* Dynamic section tags */
+/* Dynamic section tags. */
#define DT_NULL 0
#define DT_NEEDED 1
@@ -492,7 +509,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
http://docs.sun.com:80/ab2/coll.45.13/LLM/@Ab2PageView/21165?Ab2Lang=C&Ab2Enc=iso-8859-1
DTF_1_CONFEXP is the same as DTF_1_PARINIT. It is a typo. The value
- defined here is the same as the one in <sys/link.h> on Solaris 8. */
+ defined here is the same as the one in <sys/link.h> on Solaris 8. */
#define DTF_1_CONFEXP 0x00000002
/* Flag values used in the DT_POSFLAG_1 .dynamic entry. */
@@ -563,19 +580,26 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define ELF_VER_CHR '@'
/* Possible values for si_boundto. */
+
#define SYMINFO_BT_SELF 0xffff /* Symbol bound to self */
#define SYMINFO_BT_PARENT 0xfffe /* Symbol bound to parent */
#define SYMINFO_BT_LOWRESERVE 0xff00 /* Beginning of reserved entries */
/* Possible bitmasks for si_flags. */
+
#define SYMINFO_FLG_DIRECT 0x0001 /* Direct bound symbol */
#define SYMINFO_FLG_PASSTHRU 0x0002 /* Pass-thru symbol for translator */
#define SYMINFO_FLG_COPY 0x0004 /* Symbol is a copy-reloc */
-#define SYMINFO_FLG_LAZYLOAD 0x0008 /* Symbol bound to object to be lazy
- loaded */
+#define SYMINFO_FLG_LAZYLOAD 0x0008 /* Symbol bound to object to be lazy loaded */
+
/* Syminfo version values. */
+
#define SYMINFO_NONE 0
#define SYMINFO_CURRENT 1
#define SYMINFO_NUM 2
+/* Section Group Flags. */
+
+#define GRP_COMDAT 0x1 /* A COMDAT group */
+
#endif /* _ELF_COMMON_H */
diff --git a/contrib/binutils/include/elf/cris.h b/contrib/binutils/include/elf/cris.h
new file mode 100644
index 0000000..957f194
--- /dev/null
+++ b/contrib/binutils/include/elf/cris.h
@@ -0,0 +1,47 @@
+/* CRIS ELF support for BFD.
+ Copyright (C) 2000 Free Software Foundation, Inc.
+ Contributed by Axis Communications AB, Lund, Sweden.
+ Written by Hans-Peter Nilsson.
+
+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. */
+
+#ifndef _ELF_CRIS_H
+#define _ELF_CRIS_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_cris_reloc_type)
+ RELOC_NUMBER (R_CRIS_NONE, 0)
+ RELOC_NUMBER (R_CRIS_8, 1)
+ RELOC_NUMBER (R_CRIS_16, 2)
+ RELOC_NUMBER (R_CRIS_32, 3)
+ RELOC_NUMBER (R_CRIS_8_PCREL, 4)
+ RELOC_NUMBER (R_CRIS_16_PCREL, 5)
+ RELOC_NUMBER (R_CRIS_32_PCREL, 6)
+
+ RELOC_NUMBER (R_CRIS_GNU_VTINHERIT, 7)
+ RELOC_NUMBER (R_CRIS_GNU_VTENTRY, 8)
+
+ /* No other relocs must be visible outside the assembler. */
+
+END_RELOC_NUMBERS (R_CRIS_max)
+
+/* User symbols in this file have a leading underscore. */
+#define EF_CRIS_UNDERSCORE 0x00000001
+
+#endif /* _ELF_CRIS_H */
diff --git a/contrib/binutils/include/elf/d10v.h b/contrib/binutils/include/elf/d10v.h
index 63b79c8..96bfaf2 100644
--- a/contrib/binutils/include/elf/d10v.h
+++ b/contrib/binutils/include/elf/d10v.h
@@ -1,5 +1,5 @@
/* d10v ELF support for BFD.
- Copyright (C) 1998 Free Software Foundation, Inc.
+ Copyright (C) 1998, 2000 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@@ -33,6 +33,6 @@ START_RELOC_NUMBERS (elf_d10v_reloc_type)
RELOC_NUMBER (R_D10V_32, 6)
RELOC_NUMBER (R_D10V_GNU_VTINHERIT, 7)
RELOC_NUMBER (R_D10V_GNU_VTENTRY, 8)
-END_RELOC_NUMBERS
+END_RELOC_NUMBERS (R_D10V_max)
#endif
diff --git a/contrib/binutils/include/elf/d30v.h b/contrib/binutils/include/elf/d30v.h
index adbad19..369aa4b 100644
--- a/contrib/binutils/include/elf/d30v.h
+++ b/contrib/binutils/include/elf/d30v.h
@@ -1,5 +1,5 @@
/* d30v ELF support for BFD.
- Copyright (C) 1998 Free Software Foundation, Inc.
+ Copyright (C) 1998, 2000 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@@ -37,6 +37,6 @@ START_RELOC_NUMBERS (elf_d30v_reloc_type)
RELOC_NUMBER (R_D30V_32, 10)
RELOC_NUMBER (R_D30V_32_PCREL, 11)
RELOC_NUMBER (R_D30V_32_NORMAL, 12)
-END_RELOC_NUMBERS
+END_RELOC_NUMBERS (R_D30V_max)
#endif
diff --git a/contrib/binutils/include/elf/fr30.h b/contrib/binutils/include/elf/fr30.h
index 223b052..54c1ae6 100644
--- a/contrib/binutils/include/elf/fr30.h
+++ b/contrib/binutils/include/elf/fr30.h
@@ -1,5 +1,5 @@
/* FR30 ELF support for BFD.
- Copyright (C) 1998 Free Software Foundation, Inc.
+ Copyright (C) 1998, 99, 2000 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@@ -37,7 +37,6 @@ START_RELOC_NUMBERS (elf_fr30_reloc_type)
RELOC_NUMBER (R_FR30_12_PCREL, 10)
RELOC_NUMBER (R_FR30_GNU_VTINHERIT, 11)
RELOC_NUMBER (R_FR30_GNU_VTENTRY, 12)
- EMPTY_RELOC (R_FR30_max)
-END_RELOC_NUMBERS
+END_RELOC_NUMBERS (R_FR30_max)
#endif /* _ELF_FR30_H */
diff --git a/contrib/binutils/include/elf/hppa.h b/contrib/binutils/include/elf/hppa.h
index 0e45d74..e9ec03a 100644
--- a/contrib/binutils/include/elf/hppa.h
+++ b/contrib/binutils/include/elf/hppa.h
@@ -1,5 +1,5 @@
/* HPPA ELF support for BFD.
- Copyright (C) 1993, 1994, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1993, 94, 95, 99, 2000 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@@ -102,173 +102,385 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "elf/reloc-macros.h"
START_RELOC_NUMBERS (elf_hppa_reloc_type)
- RELOC_NUMBER (R_PARISC_NONE, 0) /* No reloc */
-
- /* These relocation types do simple base + offset relocations. */
-
- RELOC_NUMBER (R_PARISC_DIR32, 1)
- RELOC_NUMBER (R_PARISC_DIR21L, 2)
- RELOC_NUMBER (R_PARISC_DIR17R, 3)
- RELOC_NUMBER (R_PARISC_DIR17F, 4)
- RELOC_NUMBER (R_PARISC_DIR14R, 6)
-
- /* PC-relative relocation types
- Typically used for calls.
- Note PCREL17C and PCREL17F differ only in overflow handling.
- PCREL17C never reports a relocation error.
-
- When supporting argument relocations, function calls must be
- accompanied by parameter relocation information. This information is
- carried in the ten high-order bits of the addend field. The remaining
- 22 bits of of the addend field are sign-extended to form the Addend.
-
- Note the code to build argument relocations depends on the
- addend being zero. A consequence of this limitation is GAS
- can not perform relocation reductions for function symbols. */
-
- RELOC_NUMBER (R_PARISC_PCREL32, 9)
- RELOC_NUMBER (R_PARISC_PCREL21L, 10)
- RELOC_NUMBER (R_PARISC_PCREL17R, 11)
- RELOC_NUMBER (R_PARISC_PCREL17F, 12)
- RELOC_NUMBER (R_PARISC_PCREL17C, 13)
- RELOC_NUMBER (R_PARISC_PCREL14R, 14)
- RELOC_NUMBER (R_PARISC_PCREL14F, 15)
-
- /* DP-relative relocation types. */
- RELOC_NUMBER (R_PARISC_DPREL21L, 18)
- RELOC_NUMBER (R_PARISC_DPREL14WR, 19)
- RELOC_NUMBER (R_PARISC_DPREL14DR, 20)
- RELOC_NUMBER (R_PARISC_DPREL14R, 22)
- RELOC_NUMBER (R_PARISC_DPREL14F, 23)
-
- /* Data linkage table (DLT) relocation types
-
- SOM DLT_REL fixup requests are used to for static data references
- from position-independent code within shared libraries. They are
- similar to the GOT relocation types in some SVR4 implementations. */
-
- RELOC_NUMBER (R_PARISC_DLTREL21L, 26)
- RELOC_NUMBER (R_PARISC_DLTREL14R, 30)
- RELOC_NUMBER (R_PARISC_DLTREL14F, 31)
-
- /* DLT indirect relocation types */
- RELOC_NUMBER (R_PARISC_DLTIND21L, 34)
- RELOC_NUMBER (R_PARISC_DLTIND14R, 38)
- RELOC_NUMBER (R_PARISC_DLTIND14F, 39)
-
- /* Base relative relocation types. Ugh. These imply lots of state */
- RELOC_NUMBER (R_PARISC_SETBASE, 40)
- RELOC_NUMBER (R_PARISC_SECREL32, 41)
- RELOC_NUMBER (R_PARISC_BASEREL21L, 42)
- RELOC_NUMBER (R_PARISC_BASEREL17R, 43)
- RELOC_NUMBER (R_PARISC_BASEREL17F, 44)
- RELOC_NUMBER (R_PARISC_BASEREL14R, 46)
- RELOC_NUMBER (R_PARISC_BASEREL14F, 47)
-
- /* Segment relative relocation types. */
- RELOC_NUMBER (R_PARISC_SEGBASE, 48)
- RELOC_NUMBER (R_PARISC_SEGREL32, 49)
-
- /* Offsets from the PLT. */
- RELOC_NUMBER (R_PARISC_PLTOFF21L, 50)
- RELOC_NUMBER (R_PARISC_PLTOFF14R, 54)
- RELOC_NUMBER (R_PARISC_PLTOFF14F, 55)
-
- RELOC_NUMBER (R_PARISC_LTOFF_FPTR32, 57)
- RELOC_NUMBER (R_PARISC_LTOFF_FPTR21L, 58)
- RELOC_NUMBER (R_PARISC_LTOFF_FPTR14R, 62)
-
- RELOC_NUMBER (R_PARISC_FPTR64, 64)
-
- /* Plabel relocation types. */
- RELOC_NUMBER (R_PARISC_PLABEL32, 65)
- RELOC_NUMBER (R_PARISC_PLABEL21L, 66)
- RELOC_NUMBER (R_PARISC_PLABEL14R, 70)
-
- /* PCREL relocations. */
- RELOC_NUMBER (R_PARISC_PCREL64, 72)
- RELOC_NUMBER (R_PARISC_PCREL22C, 73)
- RELOC_NUMBER (R_PARISC_PCREL22F, 74)
- RELOC_NUMBER (R_PARISC_PCREL14WR, 75)
- RELOC_NUMBER (R_PARISC_PCREL14DR, 76)
- RELOC_NUMBER (R_PARISC_PCREL16F, 77)
- RELOC_NUMBER (R_PARISC_PCREL16WF, 78)
- RELOC_NUMBER (R_PARISC_PCREL16DF, 79)
-
-
- RELOC_NUMBER (R_PARISC_DIR64, 80)
- RELOC_NUMBER (R_PARISC_DIR64WR, 81)
- RELOC_NUMBER (R_PARISC_DIR64DR, 82)
- RELOC_NUMBER (R_PARISC_DIR14WR, 83)
- RELOC_NUMBER (R_PARISC_DIR14DR, 84)
- RELOC_NUMBER (R_PARISC_DIR16F, 85)
- RELOC_NUMBER (R_PARISC_DIR16WF, 86)
- RELOC_NUMBER (R_PARISC_DIR16DF, 87)
-
- RELOC_NUMBER (R_PARISC_GPREL64, 88)
-
- RELOC_NUMBER (R_PARISC_DLTREL14WR, 91)
- RELOC_NUMBER (R_PARISC_DLTREL14DR, 92)
- RELOC_NUMBER (R_PARISC_GPREL16F, 93)
- RELOC_NUMBER (R_PARISC_GPREL16WF, 94)
- RELOC_NUMBER (R_PARISC_GPREL16DF, 95)
-
-
- RELOC_NUMBER (R_PARISC_LTOFF64, 96)
- RELOC_NUMBER (R_PARISC_DLTIND14WR, 99)
- RELOC_NUMBER (R_PARISC_DLTIND14DR, 100)
- RELOC_NUMBER (R_PARISC_LTOFF16F, 101)
- RELOC_NUMBER (R_PARISC_LTOFF16WF, 102)
- RELOC_NUMBER (R_PARISC_LTOFF16DF, 103)
-
- RELOC_NUMBER (R_PARISC_SECREL64, 104)
-
- RELOC_NUMBER (R_PARISC_BASEREL14WR, 107)
- RELOC_NUMBER (R_PARISC_BASEREL14DR, 108)
-
- RELOC_NUMBER (R_PARISC_SEGREL64, 112)
-
- RELOC_NUMBER (R_PARISC_PLTOFF14WR, 115)
- RELOC_NUMBER (R_PARISC_PLTOFF14DR, 116)
- RELOC_NUMBER (R_PARISC_PLTOFF16F, 117)
- RELOC_NUMBER (R_PARISC_PLTOFF16WF, 118)
- RELOC_NUMBER (R_PARISC_PLTOFF16DF, 119)
-
- RELOC_NUMBER (R_PARISC_LTOFF_FPTR64, 120)
- RELOC_NUMBER (R_PARISC_LTOFF_FPTR14WR, 123)
- RELOC_NUMBER (R_PARISC_LTOFF_FPTR14DR, 124)
- RELOC_NUMBER (R_PARISC_LTOFF_FPTR16F, 125)
- RELOC_NUMBER (R_PARISC_LTOFF_FPTR16WF, 126)
- RELOC_NUMBER (R_PARISC_LTOFF_FPTR16DF, 127)
-
-
- RELOC_NUMBER (R_PARISC_COPY, 128)
- RELOC_NUMBER (R_PARISC_IPLT, 129)
- RELOC_NUMBER (R_PARISC_EPLT, 130)
-
- RELOC_NUMBER (R_PARISC_TPREL32, 153)
- RELOC_NUMBER (R_PARISC_TPREL21L, 154)
- RELOC_NUMBER (R_PARISC_TPREL14R, 158)
-
- RELOC_NUMBER (R_PARISC_LTOFF_TP21L, 162)
- RELOC_NUMBER (R_PARISC_LTOFF_TP14R, 166)
- RELOC_NUMBER (R_PARISC_LTOFF_TP14F, 167)
-
- RELOC_NUMBER (R_PARISC_TPREL64, 216)
- RELOC_NUMBER (R_PARISC_TPREL14WR, 219)
- RELOC_NUMBER (R_PARISC_TPREL14DR, 220)
- RELOC_NUMBER (R_PARISC_TPREL16F, 221)
- RELOC_NUMBER (R_PARISC_TPREL16WF, 222)
- RELOC_NUMBER (R_PARISC_TPREL16DF, 223)
-
- RELOC_NUMBER (R_PARISC_LTOFF_TP64, 224)
- RELOC_NUMBER (R_PARISC_LTOFF_TP14WR, 227)
- RELOC_NUMBER (R_PARISC_LTOFF_TP14DR, 228)
- RELOC_NUMBER (R_PARISC_LTOFF_TP16F, 229)
- RELOC_NUMBER (R_PARISC_LTOFF_TP16WF, 230)
- RELOC_NUMBER (R_PARISC_LTOFF_TP16DF, 231)
- EMPTY_RELOC (R_PARISC_UNIMPLEMENTED)
-END_RELOC_NUMBERS
+RELOC_NUMBER (R_PARISC_NONE, 0) /* No reloc */
+
+/* Data / Inst. Format Relocation Expression */
+
+RELOC_NUMBER (R_PARISC_DIR32, 1)
+/* 32-bit word symbol + addend */
+
+RELOC_NUMBER (R_PARISC_DIR21L, 2)
+/* long immediate (7) LR(symbol, addend) */
+
+RELOC_NUMBER (R_PARISC_DIR17R, 3)
+/* branch external (19) RR(symbol, addend) */
+
+RELOC_NUMBER (R_PARISC_DIR17F, 4)
+/* branch external (19) symbol + addend */
+
+RELOC_NUMBER (R_PARISC_DIR14R, 6)
+/* load/store (1) RR(symbol, addend) */
+
+RELOC_NUMBER (R_PARISC_DIR14F, 7)
+/* load/store (1) symbol, addend */
+
+/* PC-relative relocation types
+ Typically used for calls.
+ Note PCREL17C and PCREL17F differ only in overflow handling.
+ PCREL17C never reports a relocation error.
+
+ When supporting argument relocations, function calls must be
+ accompanied by parameter relocation information. This information is
+ carried in the ten high-order bits of the addend field. The remaining
+ 22 bits of of the addend field are sign-extended to form the Addend.
+
+ Note the code to build argument relocations depends on the
+ addend being zero. A consequence of this limitation is GAS
+ can not perform relocation reductions for function symbols. */
+
+RELOC_NUMBER (R_PARISC_PCREL12F, 8)
+/* op & branch (17) symbol - PC - 8 + addend */
+
+RELOC_NUMBER (R_PARISC_PCREL32, 9)
+/* 32-bit word symbol - PC - 8 + addend */
+
+RELOC_NUMBER (R_PARISC_PCREL21L, 10)
+/* long immediate (7) L(symbol - PC - 8 + addend) */
+
+RELOC_NUMBER (R_PARISC_PCREL17R, 11)
+/* branch external (19) R(symbol - PC - 8 + addend) */
+
+RELOC_NUMBER (R_PARISC_PCREL17F, 12)
+/* branch (20) symbol - PC - 8 + addend */
+
+RELOC_NUMBER (R_PARISC_PCREL17C, 13)
+/* branch (20) symbol - PC - 8 + addend */
+
+RELOC_NUMBER (R_PARISC_PCREL14R, 14)
+/* load/store (1) R(symbol - PC - 8 + addend) */
+
+RELOC_NUMBER (R_PARISC_PCREL14F, 15)
+/* load/store (1) symbol - PC - 8 + addend */
+
+
+/* DP-relative relocation types. */
+RELOC_NUMBER (R_PARISC_DPREL21L, 18)
+/* long immediate (7) LR(symbol - GP, addend) */
+
+RELOC_NUMBER (R_PARISC_DPREL14WR, 19)
+/* load/store mod. comp. (2) RR(symbol - GP, addend) */
+
+RELOC_NUMBER (R_PARISC_DPREL14DR, 20)
+/* load/store doubleword (3) RR(symbol - GP, addend) */
+
+RELOC_NUMBER (R_PARISC_DPREL14R, 22)
+/* load/store (1) RR(symbol - GP, addend) */
+
+RELOC_NUMBER (R_PARISC_DPREL14F, 23)
+/* load/store (1) symbol - GP + addend */
+
+
+/* Data linkage table (DLT) relocation types
+
+ SOM DLT_REL fixup requests are used to for static data references
+ from position-independent code within shared libraries. They are
+ similar to the GOT relocation types in some SVR4 implementations. */
+
+RELOC_NUMBER (R_PARISC_DLTREL21L, 26)
+/* long immediate (7) LR(symbol - GP, addend) */
+
+RELOC_NUMBER (R_PARISC_DLTREL14R, 30)
+/* load/store (1) RR(symbol - GP, addend) */
+
+RELOC_NUMBER (R_PARISC_DLTREL14F, 31)
+/* load/store (1) symbol - GP + addend */
+
+
+/* DLT indirect relocation types */
+RELOC_NUMBER (R_PARISC_DLTIND21L, 34)
+/* long immediate (7) L(ltoff(symbol + addend)) */
+
+RELOC_NUMBER (R_PARISC_DLTIND14R, 38)
+/* load/store (1) R(ltoff(symbol + addend)) */
+
+RELOC_NUMBER (R_PARISC_DLTIND14F, 39)
+/* load/store (1) ltoff(symbol + addend) */
+
+
+/* Base relative relocation types. Ugh. These imply lots of state */
+RELOC_NUMBER (R_PARISC_SETBASE, 40)
+/* none no reloc; base := sym */
+
+RELOC_NUMBER (R_PARISC_SECREL32, 41)
+/* 32-bit word symbol - SECT + addend */
+
+RELOC_NUMBER (R_PARISC_BASEREL21L, 42)
+/* long immediate (7) LR(symbol - base, addend) */
+
+RELOC_NUMBER (R_PARISC_BASEREL17R, 43)
+/* branch external (19) RR(symbol - base, addend) */
+
+RELOC_NUMBER (R_PARISC_BASEREL17F, 44)
+/* branch external (19) symbol - base + addend */
+
+RELOC_NUMBER (R_PARISC_BASEREL14R, 46)
+/* load/store (1) RR(symbol - base, addend) */
+
+RELOC_NUMBER (R_PARISC_BASEREL14F, 47)
+/* load/store (1) symbol - base, addend */
+
+
+/* Segment relative relocation types. */
+RELOC_NUMBER (R_PARISC_SEGBASE, 48)
+/* none no relocation; SB := sym */
+
+RELOC_NUMBER (R_PARISC_SEGREL32, 49)
+/* 32-bit word symbol - SB + addend */
+
+
+/* Offsets from the PLT. */
+RELOC_NUMBER (R_PARISC_PLTOFF21L, 50)
+/* long immediate (7) LR(pltoff(symbol), addend) */
+
+RELOC_NUMBER (R_PARISC_PLTOFF14R, 54)
+/* load/store (1) RR(pltoff(symbol), addend) */
+
+RELOC_NUMBER (R_PARISC_PLTOFF14F, 55)
+/* load/store (1) pltoff(symbol) + addend */
+
+
+RELOC_NUMBER (R_PARISC_LTOFF_FPTR32, 57)
+/* 32-bit word ltoff(fptr(symbol+addend)) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_FPTR21L, 58)
+/* long immediate (7) L(ltoff(fptr(symbol+addend))) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_FPTR14R, 62)
+/* load/store (1) R(ltoff(fptr(symbol+addend))) */
+
+
+RELOC_NUMBER (R_PARISC_FPTR64, 64)
+/* 64-bit doubleword fptr(symbol+addend) */
+
+
+/* Plabel relocation types. */
+RELOC_NUMBER (R_PARISC_PLABEL32, 65)
+/* 32-bit word fptr(symbol) */
+
+RELOC_NUMBER (R_PARISC_PLABEL21L, 66)
+/* long immediate (7) L(fptr(symbol)) */
+
+RELOC_NUMBER (R_PARISC_PLABEL14R, 70)
+/* load/store (1) R(fptr(symbol)) */
+
+
+/* PCREL relocations. */
+RELOC_NUMBER (R_PARISC_PCREL64, 72)
+/* 64-bit doubleword symbol - PC - 8 + addend */
+
+RELOC_NUMBER (R_PARISC_PCREL22C, 73)
+/* branch & link (21) symbol - PC - 8 + addend */
+
+RELOC_NUMBER (R_PARISC_PCREL22F, 74)
+/* branch & link (21) symbol - PC - 8 + addend */
+
+RELOC_NUMBER (R_PARISC_PCREL14WR, 75)
+/* load/store mod. comp. (2) R(symbol - PC - 8 + addend) */
+
+RELOC_NUMBER (R_PARISC_PCREL14DR, 76)
+/* load/store doubleword (3) R(symbol - PC - 8 + addend) */
+
+RELOC_NUMBER (R_PARISC_PCREL16F, 77)
+/* load/store (1) symbol - PC - 8 + addend */
+
+RELOC_NUMBER (R_PARISC_PCREL16WF, 78)
+/* load/store mod. comp. (2) symbol - PC - 8 + addend */
+
+RELOC_NUMBER (R_PARISC_PCREL16DF, 79)
+/* load/store doubleword (3) symbol - PC - 8 + addend */
+
+
+RELOC_NUMBER (R_PARISC_DIR64, 80)
+/* 64-bit doubleword symbol + addend */
+
+RELOC_NUMBER (R_PARISC_DIR64WR, 81)
+/* 64-bit doubleword RR(symbol, addend) */
+
+RELOC_NUMBER (R_PARISC_DIR64DR, 82)
+/* 64-bit doubleword RR(symbol, addend) */
+
+RELOC_NUMBER (R_PARISC_DIR14WR, 83)
+/* load/store mod. comp. (2) RR(symbol, addend) */
+
+RELOC_NUMBER (R_PARISC_DIR14DR, 84)
+/* load/store doubleword (3) RR(symbol, addend) */
+
+RELOC_NUMBER (R_PARISC_DIR16F, 85)
+/* load/store (1) symbol + addend */
+
+RELOC_NUMBER (R_PARISC_DIR16WF, 86)
+/* load/store mod. comp. (2) symbol + addend */
+
+RELOC_NUMBER (R_PARISC_DIR16DF, 87)
+/* load/store doubleword (3) symbol + addend */
+
+RELOC_NUMBER (R_PARISC_GPREL64, 88)
+/* 64-bit doubleword symbol - GP + addend */
+
+RELOC_NUMBER (R_PARISC_DLTREL14WR, 91)
+/* load/store mod. comp. (2) RR(symbol - GP, addend) */
+
+RELOC_NUMBER (R_PARISC_DLTREL14DR, 92)
+/* load/store doubleword (3) RR(symbol - GP, addend) */
+
+RELOC_NUMBER (R_PARISC_GPREL16F, 93)
+/* load/store (1) symbol - GP + addend */
+
+RELOC_NUMBER (R_PARISC_GPREL16WF, 94)
+/* load/store mod. comp. (2) symbol - GP + addend */
+
+RELOC_NUMBER (R_PARISC_GPREL16DF, 95)
+/* load/store doubleword (3) symbol - GP + addend */
+
+
+RELOC_NUMBER (R_PARISC_LTOFF64, 96)
+/* 64-bit doubleword ltoff(symbol + addend) */
+
+RELOC_NUMBER (R_PARISC_DLTIND14WR, 99)
+/* load/store mod. comp. (2) R(ltoff(symbol + addend)) */
+
+RELOC_NUMBER (R_PARISC_DLTIND14DR, 100)
+/* load/store doubleword (3) R(ltoff(symbol + addend)) */
+
+RELOC_NUMBER (R_PARISC_LTOFF16F, 101)
+/* load/store (1) ltoff(symbol + addend) */
+
+RELOC_NUMBER (R_PARISC_LTOFF16WF, 102)
+/* load/store mod. comp. (2) ltoff(symbol + addend) */
+
+RELOC_NUMBER (R_PARISC_LTOFF16DF, 103)
+/* load/store doubleword (3) ltoff(symbol + addend) */
+
+
+RELOC_NUMBER (R_PARISC_SECREL64, 104)
+/* 64-bit doubleword symbol - SECT + addend */
+
+RELOC_NUMBER (R_PARISC_BASEREL14WR, 107)
+/* load/store mod. comp. (2) RR(symbol - base, addend) */
+
+RELOC_NUMBER (R_PARISC_BASEREL14DR, 108)
+/* load/store doubleword (3) RR(symbol - base, addend) */
+
+
+RELOC_NUMBER (R_PARISC_SEGREL64, 112)
+/* 64-bit doubleword symbol - SB + addend */
+
+RELOC_NUMBER (R_PARISC_PLTOFF14WR, 115)
+/* load/store mod. comp. (2) RR(pltoff(symbol), addend) */
+
+RELOC_NUMBER (R_PARISC_PLTOFF14DR, 116)
+/* load/store doubleword (3) RR(pltoff(symbol), addend) */
+
+RELOC_NUMBER (R_PARISC_PLTOFF16F, 117)
+/* load/store (1) pltoff(symbol) + addend */
+
+RELOC_NUMBER (R_PARISC_PLTOFF16WF, 118)
+/* load/store mod. comp. (2) pltoff(symbol) + addend */
+
+RELOC_NUMBER (R_PARISC_PLTOFF16DF, 119)
+/* load/store doubleword (3) pltoff(symbol) + addend */
+
+
+RELOC_NUMBER (R_PARISC_LTOFF_FPTR64, 120)
+/* 64-bit doubleword ltoff(fptr(symbol+addend)) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_FPTR14WR, 123)
+/* load/store mod. comp. (2) R(ltoff(fptr(symbol+addend))) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_FPTR14DR, 124)
+/* load/store doubleword (3) R(ltoff(fptr(symbol+addend))) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_FPTR16F, 125)
+/* load/store (1) ltoff(fptr(symbol+addend)) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_FPTR16WF, 126)
+/* load/store mod. comp. (2) ltoff(fptr(symbol+addend)) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_FPTR16DF, 127)
+/* load/store doubleword (3) ltoff(fptr(symbol+addend)) */
+
+
+RELOC_NUMBER (R_PARISC_COPY, 128)
+/* data Dynamic relocations only */
+
+RELOC_NUMBER (R_PARISC_IPLT, 129)
+/* plt */
+
+RELOC_NUMBER (R_PARISC_EPLT, 130)
+/* plt */
+
+
+RELOC_NUMBER (R_PARISC_TPREL32, 153)
+/* 32-bit word symbol - TP + addend */
+
+RELOC_NUMBER (R_PARISC_TPREL21L, 154)
+/* long immediate (7) LR(symbol - TP, addend) */
+
+RELOC_NUMBER (R_PARISC_TPREL14R, 158)
+/* load/store (1) RR(symbol - TP, addend) */
+
+
+RELOC_NUMBER (R_PARISC_LTOFF_TP21L, 162)
+/* long immediate (7) L(ltoff(symbol - TP + addend)) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_TP14R, 166)
+/* load/store (1) R(ltoff(symbol - TP + addend)) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_TP14F, 167)
+/* load/store (1) ltoff(symbol - TP + addend) */
+
+
+RELOC_NUMBER (R_PARISC_TPREL64, 216)
+/* 64-bit word symbol - TP + addend */
+
+RELOC_NUMBER (R_PARISC_TPREL14WR, 219)
+/* load/store mod. comp. (2) RR(symbol - TP, addend) */
+
+RELOC_NUMBER (R_PARISC_TPREL14DR, 220)
+/* load/store doubleword (3) RR(symbol - TP, addend) */
+
+RELOC_NUMBER (R_PARISC_TPREL16F, 221)
+/* load/store (1) symbol - TP + addend */
+
+RELOC_NUMBER (R_PARISC_TPREL16WF, 222)
+/* load/store mod. comp. (2) symbol - TP + addend */
+
+RELOC_NUMBER (R_PARISC_TPREL16DF, 223)
+/* load/store doubleword (3) symbol - TP + addend */
+
+
+RELOC_NUMBER (R_PARISC_LTOFF_TP64, 224)
+/* 64-bit doubleword ltoff(symbol - TP + addend) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_TP14WR, 227)
+/* load/store mod. comp. (2) R(ltoff(symbol - TP + addend)) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_TP14DR, 228)
+/* load/store doubleword (3) R(ltoff(symbol - TP + addend)) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_TP16F, 229)
+/* load/store (1) ltoff(symbol - TP + addend) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_TP16WF, 230)
+/* load/store mod. comp. (2) ltoff(symbol - TP + addend) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_TP16DF, 231)
+/* load/store doubleword (3) ltoff(symbol - TP + addend) */
+
+RELOC_NUMBER (R_PARISC_GNU_VTENTRY, 232)
+RELOC_NUMBER (R_PARISC_GNU_VTINHERIT, 233)
+
+END_RELOC_NUMBERS (R_PARISC_UNIMPLEMENTED)
#ifndef RELOC_MACROS_GEN_FUNC
typedef enum elf_hppa_reloc_type elf_hppa_reloc_type;
@@ -288,19 +500,22 @@ typedef enum elf_hppa_reloc_type elf_hppa_reloc_type;
/* Processor specific dynamic array tags. */
-#define DT_HP_LOAD_MAP (DT_LOOS + 0x0)
-#define DT_HP_DLD_FLAGS (DT_LOOS + 0x1)
-#define DT_HP_DLD_HOOK (DT_LOOS + 0x2)
-#define DT_HP_UX10_INIT (DT_LOOS + 0x3)
-#define DT_HP_UX10_INITSZ (DT_LOOS + 0x4)
-#define DT_HP_PREINIT (DT_LOOS + 0x5)
-#define DT_HP_PREINITSZ (DT_LOOS + 0x6)
-#define DT_HP_NEEDED (DT_LOOS + 0x7)
-#define DT_HP_TIME_STAMP (DT_LOOS + 0x8)
-#define DT_HP_CHECKSUM (DT_LOOS + 0x9)
-#define DT_HP_GST_SIZE (DT_LOOS + 0xa)
-#define DT_HP_GST_VERSION (DT_LOOS + 0xb)
-#define DT_HP_GST_HASHVAL (DT_LOOS + 0xc)
+/* Arggh. HP's tools define these symbols based on the
+ old value of DT_LOOS. So we must do the same to be
+ compatible. */
+#define DT_HP_LOAD_MAP (OLD_DT_LOOS + 0x0)
+#define DT_HP_DLD_FLAGS (OLD_DT_LOOS + 0x1)
+#define DT_HP_DLD_HOOK (OLD_DT_LOOS + 0x2)
+#define DT_HP_UX10_INIT (OLD_DT_LOOS + 0x3)
+#define DT_HP_UX10_INITSZ (OLD_DT_LOOS + 0x4)
+#define DT_HP_PREINIT (OLD_DT_LOOS + 0x5)
+#define DT_HP_PREINITSZ (OLD_DT_LOOS + 0x6)
+#define DT_HP_NEEDED (OLD_DT_LOOS + 0x7)
+#define DT_HP_TIME_STAMP (OLD_DT_LOOS + 0x8)
+#define DT_HP_CHECKSUM (OLD_DT_LOOS + 0x9)
+#define DT_HP_GST_SIZE (OLD_DT_LOOS + 0xa)
+#define DT_HP_GST_VERSION (OLD_DT_LOOS + 0xb)
+#define DT_HP_GST_HASHVAL (OLD_DT_LOOS + 0xc)
/* Values for DT_HP_DLD_FLAGS. */
#define DT_HP_DEBUG_PRIVATE 0x0001 /* Map text private */
diff --git a/contrib/binutils/include/elf/i370.h b/contrib/binutils/include/elf/i370.h
index 9c021f0..b4e21aa 100644
--- a/contrib/binutils/include/elf/i370.h
+++ b/contrib/binutils/include/elf/i370.h
@@ -1,5 +1,5 @@
/* i370 ELF support for BFD.
- Copyright (C) 1995, 2000 Free Software Foundation, Inc.
+ Copyright (C) 2000 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
diff --git a/contrib/binutils/include/elf/i386.h b/contrib/binutils/include/elf/i386.h
index 0586661..c91f4be 100644
--- a/contrib/binutils/include/elf/i386.h
+++ b/contrib/binutils/include/elf/i386.h
@@ -1,5 +1,5 @@
/* ix86 ELF support for BFD.
- Copyright (C) 1998 Free Software Foundation, Inc.
+ Copyright (C) 1998, 99, 2000 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@@ -40,10 +40,9 @@ START_RELOC_NUMBERS (elf_i386_reloc_type)
RELOC_NUMBER (R_386_PC16, 21)
RELOC_NUMBER (R_386_8, 22)
RELOC_NUMBER (R_386_PC8, 23)
- RELOC_NUMBER (R_386_max, 24)
/* These are GNU extensions to enable C++ vtable garbage collection. */
RELOC_NUMBER (R_386_GNU_VTINHERIT, 250)
RELOC_NUMBER (R_386_GNU_VTENTRY, 251)
-END_RELOC_NUMBERS
+END_RELOC_NUMBERS (R_386_max)
#endif
diff --git a/contrib/binutils/include/elf/i860.h b/contrib/binutils/include/elf/i860.h
new file mode 100644
index 0000000..08b2ff5
--- /dev/null
+++ b/contrib/binutils/include/elf/i860.h
@@ -0,0 +1,66 @@
+/* i860 ELF support for BFD.
+ Copyright (C) 2000 Free Software Foundation, Inc.
+
+ Contributed by Jason Eckhardt <jle@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. */
+
+#ifndef _ELF_I860_H
+#define _ELF_I860_H
+
+/* Note: i860 ELF is defined to use only RELA relocations. */
+
+#include "elf/reloc-macros.h"
+
+START_RELOC_NUMBERS (elf_i860_reloc_type)
+ RELOC_NUMBER (R_860_NONE, 0x00) /* No reloc */
+ RELOC_NUMBER (R_860_32, 0x01) /* S+A */
+ RELOC_NUMBER (R_860_COPY, 0x02) /* No calculation */
+ RELOC_NUMBER (R_860_GLOB_DAT, 0x03) /* S, Create GOT entry */
+ RELOC_NUMBER (R_860_JUMP_SLOT, 0x04) /* S+A, Create PLT entry */
+ RELOC_NUMBER (R_860_RELATIVE, 0x05) /* B+A, Adj by program base */
+ RELOC_NUMBER (R_860_PC26, 0x30) /* (S+A-P) >> 2 */
+ RELOC_NUMBER (R_860_PLT26, 0x31) /* (L+A-P) >> 2 */
+ RELOC_NUMBER (R_860_PC16, 0x32) /* (S+A-P) >> 2 */
+ RELOC_NUMBER (R_860_LOW0, 0x40) /* S+A */
+ RELOC_NUMBER (R_860_SPLIT0, 0x42) /* S+A */
+ RELOC_NUMBER (R_860_LOW1, 0x44) /* S+A */
+ RELOC_NUMBER (R_860_SPLIT1, 0x46) /* S+A */
+ RELOC_NUMBER (R_860_LOW2, 0x48) /* S+A */
+ RELOC_NUMBER (R_860_SPLIT2, 0x4A) /* S+A */
+ RELOC_NUMBER (R_860_LOW3, 0x4C) /* S+A */
+ RELOC_NUMBER (R_860_LOGOT0, 0x50) /* G */
+ RELOC_NUMBER (R_860_SPGOT0, 0x52) /* G */
+ RELOC_NUMBER (R_860_LOGOT1, 0x54) /* G */
+ RELOC_NUMBER (R_860_SPGOT1, 0x56) /* G */
+ RELOC_NUMBER (R_860_LOGOTOFF0, 0x60) /* O */
+ RELOC_NUMBER (R_860_SPGOTOFF0, 0x62) /* O */
+ RELOC_NUMBER (R_860_LOGOTOFF1, 0x64) /* O */
+ RELOC_NUMBER (R_860_SPGOTOFF1, 0x66) /* O */
+ RELOC_NUMBER (R_860_LOGOTOFF2, 0x68) /* O */
+ RELOC_NUMBER (R_860_LOGOTOFF3, 0x6C) /* O */
+ RELOC_NUMBER (R_860_LOPC, 0x70) /* (S+A-P) >> 2 */
+ RELOC_NUMBER (R_860_HIGHADJ, 0x80) /* hiadj(S+A) */
+ RELOC_NUMBER (R_860_HAGOT, 0x90) /* hiadj(G) */
+ RELOC_NUMBER (R_860_HAGOTOFF, 0xA0) /* hiadj(O) */
+ RELOC_NUMBER (R_860_HAPC, 0xB0) /* hiadj((S+A-P) >> 2) */
+ RELOC_NUMBER (R_860_HIGH, 0xC0) /* (S+A) >> 16 */
+ RELOC_NUMBER (R_860_HIGOT, 0xD0) /* G >> 16 */
+ RELOC_NUMBER (R_860_HIGOTOFF, 0xE0) /* O */
+END_RELOC_NUMBERS (R_860_max)
+
+#endif
diff --git a/contrib/binutils/include/elf/i960.h b/contrib/binutils/include/elf/i960.h
index 3e60289..cbf67d7 100644
--- a/contrib/binutils/include/elf/i960.h
+++ b/contrib/binutils/include/elf/i960.h
@@ -1,5 +1,5 @@
/* Intel 960 ELF support for BFD.
- Copyright (C) 1999 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@@ -32,7 +32,6 @@ START_RELOC_NUMBERS (elf_i960_reloc_type)
RELOC_NUMBER (R_960_OPTCALL, 5)
RELOC_NUMBER (R_960_OPTCALLX, 6)
RELOC_NUMBER (R_960_OPTCALLXA, 7)
- EMPTY_RELOC (R_960_max)
-END_RELOC_NUMBERS
+END_RELOC_NUMBERS (R_960_max)
#endif /* _ELF_I960_H */
diff --git a/contrib/binutils/include/elf/ia64.h b/contrib/binutils/include/elf/ia64.h
new file mode 100644
index 0000000..3b18288
--- /dev/null
+++ b/contrib/binutils/include/elf/ia64.h
@@ -0,0 +1,190 @@
+/* IA-64 ELF support for BFD.
+ Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
+ Contributed by David Mosberger-Tang <davidm@hpl.hp.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. */
+
+
+#ifndef _ELF_IA64_H
+#define _ELF_IA64_H
+
+/* Bits in the e_flags field of the Elf64_Ehdr: */
+
+#define EF_IA_64_MASKOS 0x0000000f /* os-specific flags */
+#define EF_IA_64_ARCH 0xff000000 /* arch. version mask */
+
+/* ??? These four definitions are not part of the SVR4 ABI.
+ They were present in David's initial code drop, so it is probable
+ that they are used by HP/UX. */
+#define EF_IA_64_TRAPNIL (1 << 0) /* trap NIL pointer dereferences */
+#define EF_IA_64_EXT (1 << 2) /* program uses arch. extensions */
+#define EF_IA_64_BE (1 << 3) /* PSR BE bit set (big-endian) */
+#define EFA_IA_64_EAS2_3 0x23000000 /* ia64 EAS 2.3 */
+
+#define EF_IA_64_ABI64 (1 << 4) /* 64-bit ABI */
+/* Not used yet. */
+#define EF_IA_64_REDUCEDFP (1 << 5) /* Only FP6-FP11 used. */
+#define EF_IA_64_CONS_GP (1 << 6) /* gp as program wide constant. */
+#define EF_IA_64_NOFUNCDESC_CONS_GP (1 << 7) /* And no function descriptors. */
+/* Not used yet. */
+#define EF_IA_64_ABSOLUTE (1 << 8) /* Load at absolute addresses. */
+
+#define ELF_STRING_ia64_archext ".IA_64.archext"
+#define ELF_STRING_ia64_pltoff ".IA_64.pltoff"
+#define ELF_STRING_ia64_unwind ".IA_64.unwind"
+#define ELF_STRING_ia64_unwind_info ".IA_64.unwind_info"
+
+/* Bits in the sh_flags field of Elf64_Shdr: */
+
+#define SHF_IA_64_SHORT 0x10000000 /* section near gp */
+#define SHF_IA_64_NORECOV 0x20000000 /* spec insns w/o recovery */
+
+/* Possible values for sh_type in Elf64_Shdr: */
+
+#define SHT_IA_64_EXT (SHT_LOPROC + 0) /* extension bits */
+#define SHT_IA_64_UNWIND (SHT_LOPROC + 1) /* unwind bits */
+
+/* Bits in the p_flags field of Elf64_Phdr: */
+
+#define PF_IA_64_NORECOV 0x80000000
+
+/* Possible values for p_type in Elf64_Phdr: */
+
+#define PT_IA_64_ARCHEXT (PT_LOPROC + 0) /* arch extension bits */
+#define PT_IA_64_UNWIND (PT_LOPROC + 1) /* ia64 unwind bits */
+
+/* Possible values for d_tag in Elf64_Dyn: */
+
+#define DT_IA_64_PLT_RESERVE (DT_LOPROC + 0)
+
+/* ia64-specific relocation types: */
+
+/* Relocs apply to specific instructions within a bundle. The least
+ significant 2 bits of the address indicate which instruction in the
+ bundle the reloc refers to (0=first slot, 1=second slow, 2=third
+ slot, 3=undefined) and the remaining bits give the address of the
+ bundle (16 byte aligned).
+
+ The top 5 bits of the reloc code specifies the expression type, the
+ low 3 bits the format of the data word being relocated. */
+
+#include "elf/reloc-macros.h"
+
+START_RELOC_NUMBERS (elf_ia64_reloc_type)
+ RELOC_NUMBER (R_IA64_NONE, 0x00) /* none */
+
+ RELOC_NUMBER (R_IA64_IMM14, 0x21) /* symbol + addend, add imm14 */
+ RELOC_NUMBER (R_IA64_IMM22, 0x22) /* symbol + addend, add imm22 */
+ RELOC_NUMBER (R_IA64_IMM64, 0x23) /* symbol + addend, mov imm64 */
+ RELOC_NUMBER (R_IA64_DIR32MSB, 0x24) /* symbol + addend, data4 MSB */
+ RELOC_NUMBER (R_IA64_DIR32LSB, 0x25) /* symbol + addend, data4 LSB */
+ RELOC_NUMBER (R_IA64_DIR64MSB, 0x26) /* symbol + addend, data8 MSB */
+ RELOC_NUMBER (R_IA64_DIR64LSB, 0x27) /* symbol + addend, data8 LSB */
+
+ RELOC_NUMBER (R_IA64_GPREL22, 0x2a) /* @gprel(sym+add), add imm22 */
+ RELOC_NUMBER (R_IA64_GPREL64I, 0x2b) /* @gprel(sym+add), mov imm64 */
+ RELOC_NUMBER (R_IA64_GPREL32MSB, 0x2c) /* @gprel(sym+add), data4 MSB */
+ RELOC_NUMBER (R_IA64_GPREL32LSB, 0x2d) /* @gprel(sym+add), data4 LSB */
+ RELOC_NUMBER (R_IA64_GPREL64MSB, 0x2e) /* @gprel(sym+add), data8 MSB */
+ RELOC_NUMBER (R_IA64_GPREL64LSB, 0x2f) /* @gprel(sym+add), data8 LSB */
+
+ RELOC_NUMBER (R_IA64_LTOFF22, 0x32) /* @ltoff(sym+add), add imm22 */
+ RELOC_NUMBER (R_IA64_LTOFF64I, 0x33) /* @ltoff(sym+add), mov imm64 */
+
+ RELOC_NUMBER (R_IA64_PLTOFF22, 0x3a) /* @pltoff(sym+add), add imm22 */
+ RELOC_NUMBER (R_IA64_PLTOFF64I, 0x3b) /* @pltoff(sym+add), mov imm64 */
+ RELOC_NUMBER (R_IA64_PLTOFF64MSB, 0x3e) /* @pltoff(sym+add), data8 MSB */
+ RELOC_NUMBER (R_IA64_PLTOFF64LSB, 0x3f) /* @pltoff(sym+add), data8 LSB */
+
+ RELOC_NUMBER (R_IA64_FPTR64I, 0x43) /* @fptr(sym+add), mov imm64 */
+ RELOC_NUMBER (R_IA64_FPTR32MSB, 0x44) /* @fptr(sym+add), data4 MSB */
+ RELOC_NUMBER (R_IA64_FPTR32LSB, 0x45) /* @fptr(sym+add), data4 LSB */
+ RELOC_NUMBER (R_IA64_FPTR64MSB, 0x46) /* @fptr(sym+add), data8 MSB */
+ RELOC_NUMBER (R_IA64_FPTR64LSB, 0x47) /* @fptr(sym+add), data8 LSB */
+
+ RELOC_NUMBER (R_IA64_PCREL60B, 0x48) /* @pcrel(sym+add), brl */
+ RELOC_NUMBER (R_IA64_PCREL21B, 0x49) /* @pcrel(sym+add), ptb, call */
+ RELOC_NUMBER (R_IA64_PCREL21M, 0x4a) /* @pcrel(sym+add), chk.s */
+ RELOC_NUMBER (R_IA64_PCREL21F, 0x4b) /* @pcrel(sym+add), fchkf */
+ RELOC_NUMBER (R_IA64_PCREL32MSB, 0x4c) /* @pcrel(sym+add), data4 MSB */
+ RELOC_NUMBER (R_IA64_PCREL32LSB, 0x4d) /* @pcrel(sym+add), data4 LSB */
+ RELOC_NUMBER (R_IA64_PCREL64MSB, 0x4e) /* @pcrel(sym+add), data8 MSB */
+ RELOC_NUMBER (R_IA64_PCREL64LSB, 0x4f) /* @pcrel(sym+add), data8 LSB */
+
+ RELOC_NUMBER (R_IA64_LTOFF_FPTR22, 0x52) /* @ltoff(@fptr(s+a)), imm22 */
+ RELOC_NUMBER (R_IA64_LTOFF_FPTR64I, 0x53) /* @ltoff(@fptr(s+a)), imm64 */
+ RELOC_NUMBER (R_IA64_LTOFF_FPTR32MSB, 0x54) /* @ltoff(@fptr(s+a)), 4 MSB */
+ RELOC_NUMBER (R_IA64_LTOFF_FPTR32LSB, 0x55) /* @ltoff(@fptr(s+a)), 4 LSB */
+ RELOC_NUMBER (R_IA64_LTOFF_FPTR64MSB, 0x56) /* @ltoff(@fptr(s+a)), 8 MSB */
+ RELOC_NUMBER (R_IA64_LTOFF_FPTR64LSB, 0x57) /* @ltoff(@fptr(s+a)), 8 LSB */
+
+ RELOC_NUMBER (R_IA64_SEGREL32MSB, 0x5c) /* @segrel(sym+add), data4 MSB */
+ RELOC_NUMBER (R_IA64_SEGREL32LSB, 0x5d) /* @segrel(sym+add), data4 LSB */
+ RELOC_NUMBER (R_IA64_SEGREL64MSB, 0x5e) /* @segrel(sym+add), data8 MSB */
+ RELOC_NUMBER (R_IA64_SEGREL64LSB, 0x5f) /* @segrel(sym+add), data8 LSB */
+
+ RELOC_NUMBER (R_IA64_SECREL32MSB, 0x64) /* @secrel(sym+add), data4 MSB */
+ RELOC_NUMBER (R_IA64_SECREL32LSB, 0x65) /* @secrel(sym+add), data4 LSB */
+ RELOC_NUMBER (R_IA64_SECREL64MSB, 0x66) /* @secrel(sym+add), data8 MSB */
+ RELOC_NUMBER (R_IA64_SECREL64LSB, 0x67) /* @secrel(sym+add), data8 LSB */
+
+ RELOC_NUMBER (R_IA64_REL32MSB, 0x6c) /* data 4 + REL */
+ RELOC_NUMBER (R_IA64_REL32LSB, 0x6d) /* data 4 + REL */
+ RELOC_NUMBER (R_IA64_REL64MSB, 0x6e) /* data 8 + REL */
+ RELOC_NUMBER (R_IA64_REL64LSB, 0x6f) /* data 8 + REL */
+
+ RELOC_NUMBER (R_IA64_LTV32MSB, 0x74) /* symbol + addend, data4 MSB */
+ RELOC_NUMBER (R_IA64_LTV32LSB, 0x75) /* symbol + addend, data4 LSB */
+ RELOC_NUMBER (R_IA64_LTV64MSB, 0x76) /* symbol + addend, data8 MSB */
+ RELOC_NUMBER (R_IA64_LTV64LSB, 0x77) /* symbol + addend, data8 LSB */
+
+ RELOC_NUMBER (R_IA64_PCREL21BI, 0x79) /* @pcrel(sym+add), ptb, call */
+ RELOC_NUMBER (R_IA64_PCREL22, 0x7a) /* @pcrel(sym+add), imm22 */
+ RELOC_NUMBER (R_IA64_PCREL64I, 0x7b) /* @pcrel(sym+add), imm64 */
+
+ RELOC_NUMBER (R_IA64_IPLTMSB, 0x80) /* dynamic reloc, imported PLT, MSB */
+ RELOC_NUMBER (R_IA64_IPLTLSB, 0x81) /* dynamic reloc, imported PLT, LSB */
+ RELOC_NUMBER (R_IA64_COPY, 0x84) /* dynamic reloc, data copy */
+ RELOC_NUMBER (R_IA64_LTOFF22X, 0x86) /* LTOFF22, relaxable. */
+ RELOC_NUMBER (R_IA64_LDXMOV, 0x87) /* Use of LTOFF22X. */
+
+ RELOC_NUMBER (R_IA64_TPREL14, 0x91) /* @tprel(sym+add), add imm14 */
+ RELOC_NUMBER (R_IA64_TPREL22, 0x92) /* @tprel(sym+add), add imm22 */
+ RELOC_NUMBER (R_IA64_TPREL64I, 0x93) /* @tprel(sym+add), add imm64 */
+ RELOC_NUMBER (R_IA64_TPREL64MSB, 0x96) /* @tprel(sym+add), data8 MSB */
+ RELOC_NUMBER (R_IA64_TPREL64LSB, 0x97) /* @tprel(sym+add), data8 LSB */
+
+ RELOC_NUMBER (R_IA64_LTOFF_TP22, 0x9a) /* @ltoff(@tprel(s+a)), add imm22 */
+
+ RELOC_NUMBER (R_IA64_DTPMOD64MSB, 0xa6) /* @dtpmod(sym+add), data8 MSB */
+ RELOC_NUMBER (R_IA64_DTPMOD64LSB, 0xa7) /* @dtpmod(sym+add), data8 LSB */
+ RELOC_NUMBER (R_IA64_LTOFF_DTPMOD22, 0xaa) /* @ltoff(@dtpmod(s+a)), imm22 */
+
+ RELOC_NUMBER (R_IA64_DTPREL14, 0xb1) /* @dtprel(sym+add), imm14 */
+ RELOC_NUMBER (R_IA64_DTPREL22, 0xb2) /* @dtprel(sym+add), imm22 */
+ RELOC_NUMBER (R_IA64_DTPREL64I, 0xb3) /* @dtprel(sym+add), imm64 */
+ RELOC_NUMBER (R_IA64_DTPREL32MSB, 0xb4) /* @dtprel(sym+add), data4 MSB */
+ RELOC_NUMBER (R_IA64_DTPREL32LSB, 0xb5) /* @dtprel(sym+add), data4 LSB */
+ RELOC_NUMBER (R_IA64_DTPREL64MSB, 0xb6) /* @dtprel(sym+add), data8 MSB */
+ RELOC_NUMBER (R_IA64_DTPREL64LSB, 0xb7) /* @dtprel(sym+add), data8 LSB */
+
+ RELOC_NUMBER (R_IA64_LTOFF_DTPREL22, 0xba) /* @ltoff(@dtprel(s+a)), imm22 */
+
+ FAKE_RELOC (R_IA64_MAX_RELOC_CODE, 0xba)
+END_RELOC_NUMBERS (R_IA64_max)
+
+#endif /* _ELF_IA64_H */
diff --git a/contrib/binutils/include/elf/internal.h b/contrib/binutils/include/elf/internal.h
index a9b81a07..6ca316b 100644
--- a/contrib/binutils/include/elf/internal.h
+++ b/contrib/binutils/include/elf/internal.h
@@ -1,5 +1,6 @@
/* ELF support for BFD.
- Copyright (C) 1991, 92, 93, 94, 95, 97, 1998 Free Software Foundation, Inc.
+ Copyright (C) 1991, 92, 93, 94, 95, 97, 98, 2000
+ Free Software Foundation, Inc.
Written by Fred Fish @ Cygnus Support, from information published
in "UNIX System V Release 4, Programmers Guide: ANSI C and
@@ -112,7 +113,7 @@ struct elf_internal_sym {
bfd_vma st_size; /* Associated symbol size */
unsigned long st_name; /* Symbol name, index in string tbl */
unsigned char st_info; /* Type and binding attributes */
- unsigned char st_other; /* No defined meaning, 0 */
+ unsigned char st_other; /* Visibilty, and target specific */
unsigned short st_shndx; /* Associated section index */
};
diff --git a/contrib/binutils/include/elf/m32r.h b/contrib/binutils/include/elf/m32r.h
index a12ae16..9b6c4e9 100644
--- a/contrib/binutils/include/elf/m32r.h
+++ b/contrib/binutils/include/elf/m32r.h
@@ -1,5 +1,5 @@
/* M32R ELF support for BFD.
- Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
+ Copyright (C) 1996, 97, 98, 99, 2000 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@@ -37,8 +37,7 @@ START_RELOC_NUMBERS (elf_m32r_reloc_type)
RELOC_NUMBER (R_M32R_SDA16, 10)
RELOC_NUMBER (R_M32R_GNU_VTINHERIT, 11)
RELOC_NUMBER (R_M32R_GNU_VTENTRY, 12)
- EMPTY_RELOC (R_M32R_max)
-END_RELOC_NUMBERS
+END_RELOC_NUMBERS (R_M32R_max)
/* Processor specific section indices. These sections do not actually
exist. Symbols with a st_shndx field corresponding to one of these
diff --git a/contrib/binutils/include/elf/m68hc11.h b/contrib/binutils/include/elf/m68hc11.h
new file mode 100644
index 0000000..30e0556
--- /dev/null
+++ b/contrib/binutils/include/elf/m68hc11.h
@@ -0,0 +1,42 @@
+/* m68hc11 & m68hc12 ELF support for BFD.
+ Copyright (C) 1999, 2000 Free Software Foundation, Inc.
+
+ 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. */
+
+#ifndef _ELF_M68HC11_H
+#define _ELF_M68HC11_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocation types. */
+START_RELOC_NUMBERS (elf_m68hc11_reloc_type)
+ RELOC_NUMBER (R_M68HC11_NONE, 0)
+ RELOC_NUMBER (R_M68HC11_8, 1)
+ RELOC_NUMBER (R_M68HC11_HI8, 2)
+ RELOC_NUMBER (R_M68HC11_LO8, 3)
+ RELOC_NUMBER (R_M68HC11_PCREL_8, 4)
+ RELOC_NUMBER (R_M68HC11_16, 5)
+ RELOC_NUMBER (R_M68HC11_32, 6)
+ RELOC_NUMBER (R_M68HC11_3B, 7)
+ RELOC_NUMBER (R_M68HC11_PCREL_16, 8)
+
+ /* These are GNU extensions to enable C++ vtable garbage collection. */
+ RELOC_NUMBER (R_M68HC11_GNU_VTINHERIT, 9)
+ RELOC_NUMBER (R_M68HC11_GNU_VTENTRY, 10)
+END_RELOC_NUMBERS (R_M68HC11_max)
+
+#endif
diff --git a/contrib/binutils/include/elf/m68k.h b/contrib/binutils/include/elf/m68k.h
index e2d51ef..a6aab10 100644
--- a/contrib/binutils/include/elf/m68k.h
+++ b/contrib/binutils/include/elf/m68k.h
@@ -1,5 +1,5 @@
/* MC68k ELF support for BFD.
- Copyright (C) 1998 Free Software Foundation, Inc.
+ Copyright (C) 1998, 99, 2000 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@@ -50,8 +50,7 @@ START_RELOC_NUMBERS (elf_m68k_reloc_type)
/* These are GNU extensions to enable C++ vtable garbage collection. */
RELOC_NUMBER (R_68K_GNU_VTINHERIT, 23)
RELOC_NUMBER (R_68K_GNU_VTENTRY, 24)
- EMPTY_RELOC (R_68K_max)
-END_RELOC_NUMBERS
+END_RELOC_NUMBERS (R_68K_max)
#define EF_CPU32 0x00810000
diff --git a/contrib/binutils/include/elf/mcore.h b/contrib/binutils/include/elf/mcore.h
index 62a88c9..f97a682 100644
--- a/contrib/binutils/include/elf/mcore.h
+++ b/contrib/binutils/include/elf/mcore.h
@@ -1,5 +1,5 @@
/* Motorola MCore support for BFD.
- Copyright (C) 1995, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1995, 99, 2000 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@@ -38,8 +38,7 @@ START_RELOC_NUMBERS (elf_mcore_reloc_type)
RELOC_NUMBER (R_MCORE_COPY, 10)
RELOC_NUMBER (R_MCORE_GLOB_DAT, 11)
RELOC_NUMBER (R_MCORE_JUMP_SLOT, 12)
- EMPTY_RELOC (R_MCORE_max)
-END_RELOC_NUMBERS
+END_RELOC_NUMBERS (R_MCORE_max)
/* Section Attributes. */
#define SHF_MCORE_NOREAD 0x80000000
diff --git a/contrib/binutils/include/elf/mips.h b/contrib/binutils/include/elf/mips.h
index 1e2a9f9..4446512 100644
--- a/contrib/binutils/include/elf/mips.h
+++ b/contrib/binutils/include/elf/mips.h
@@ -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
@@ -84,7 +85,7 @@ START_RELOC_NUMBERS (elf_mips_reloc_type)
/* 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. */
@@ -120,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
@@ -152,7 +162,8 @@ 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
+#define E_MIPS_MACH_SB1 0x008a0000
/* Processor specific section indices. These sections do not actually
exist. Symbols with a st_shndx field corresponding to one of these
diff --git a/contrib/binutils/include/elf/mn10200.h b/contrib/binutils/include/elf/mn10200.h
index 5e29e0a..1a14ee7 100644
--- a/contrib/binutils/include/elf/mn10200.h
+++ b/contrib/binutils/include/elf/mn10200.h
@@ -1,5 +1,5 @@
/* MN10200 ELF support for BFD.
- Copyright (C) 1998 Free Software Foundation, Inc.
+ Copyright (C) 1998, 2000 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@@ -34,6 +34,6 @@ START_RELOC_NUMBERS (elf_mn10200_reloc_type)
RELOC_NUMBER (R_MN10200_PCREL8, 5)
RELOC_NUMBER (R_MN10200_PCREL16, 6)
RELOC_NUMBER (R_MN10200_PCREL24, 7)
-END_RELOC_NUMBERS
+END_RELOC_NUMBERS (R_MN10200_max)
#endif /* _ELF_MN10200_H */
diff --git a/contrib/binutils/include/elf/mn10300.h b/contrib/binutils/include/elf/mn10300.h
index 1b90a13..74f2da8 100644
--- a/contrib/binutils/include/elf/mn10300.h
+++ b/contrib/binutils/include/elf/mn10300.h
@@ -1,5 +1,5 @@
/* MN10300 ELF support for BFD.
- Copyright (C) 1998 Free Software Foundation, Inc.
+ Copyright (C) 1998, 99, 2000 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@@ -36,8 +36,7 @@ START_RELOC_NUMBERS (elf_mn10300_reloc_type)
RELOC_NUMBER (R_MN10300_GNU_VTINHERIT, 7)
RELOC_NUMBER (R_MN10300_GNU_VTENTRY, 8)
RELOC_NUMBER (R_MN10300_24, 9)
- EMPTY_RELOC (R_MN10300_MAX)
-END_RELOC_NUMBERS
+END_RELOC_NUMBERS (R_MN10300_MAX)
/* 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
diff --git a/contrib/binutils/include/elf/pj.h b/contrib/binutils/include/elf/pj.h
index 6bb8306..7690ea6 100644
--- a/contrib/binutils/include/elf/pj.h
+++ b/contrib/binutils/include/elf/pj.h
@@ -1,5 +1,5 @@
/* picoJava ELF support for BFD.
- Copyright (C) 1999 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@@ -35,8 +35,7 @@ START_RELOC_NUMBERS (elf_pj_reloc_type)
RELOC_NUMBER (R_PJ_CODE_HI16, 14)
RELOC_NUMBER (R_PJ_GNU_VTINHERIT, 15)
RELOC_NUMBER (R_PJ_GNU_VTENTRY, 16)
- EMPTY_RELOC (R_PJ_max)
-END_RELOC_NUMBERS
+END_RELOC_NUMBERS (R_PJ_max)
#define EF_PICOJAVA_ARCH 0x0000000f
#define EF_PICOJAVA_NEWCALLS 0x00000010
diff --git a/contrib/binutils/include/elf/ppc.h b/contrib/binutils/include/elf/ppc.h
index b3116d8..f53bacd 100644
--- a/contrib/binutils/include/elf/ppc.h
+++ b/contrib/binutils/include/elf/ppc.h
@@ -1,5 +1,5 @@
/* PPC ELF support for BFD.
- Copyright (C) 1995, 1998 Free Software Foundation, Inc.
+ Copyright (C) 1995, 96, 98, 2000 Free Software Foundation, Inc.
By Michael Meissner, Cygnus Support, <meissner@cygnus.com>, from information
in the System V Application Binary Interface, PowerPC Processor Supplement
@@ -96,19 +96,17 @@ START_RELOC_NUMBERS (elf_ppc_reloc_type)
that may still be in object files. */
RELOC_NUMBER (R_PPC_TOC16, 255)
- EMPTY_RELOC (R_PPC_max)
-END_RELOC_NUMBERS
+END_RELOC_NUMBERS (R_PPC_max)
/* Processor specific flags for the ELF header e_flags field. */
-#define EF_PPC_EMB 0x80000000 /* PowerPC embedded flag */
+#define EF_PPC_EMB 0x80000000 /* PowerPC embedded flag. */
- /* CYGNUS local bits below */
-#define EF_PPC_RELOCATABLE 0x00010000 /* PowerPC -mrelocatable flag */
-#define EF_PPC_RELOCATABLE_LIB 0x00008000 /* PowerPC -mrelocatable-lib flag */
+#define EF_PPC_RELOCATABLE 0x00010000 /* PowerPC -mrelocatable flag. */
+#define EF_PPC_RELOCATABLE_LIB 0x00008000 /* PowerPC -mrelocatable-lib flag. */
-/* Processor specific section headers, sh_type field */
+/* Processor specific section headers, sh_type field. */
#define SHT_ORDERED SHT_HIPROC /* Link editor is to sort the \
entries in this section \
@@ -116,7 +114,7 @@ END_RELOC_NUMBERS
specified in the associated \
symbol table entry. */
-/* Processor specific section flags, sh_flags field */
+/* Processor specific section flags, sh_flags field. */
#define SHF_EXCLUDE 0x80000000 /* Link editor is to exclude \
this section from executable \
diff --git a/contrib/binutils/include/elf/reloc-macros.h b/contrib/binutils/include/elf/reloc-macros.h
index 42174ca..df5e0e3 100644
--- a/contrib/binutils/include/elf/reloc-macros.h
+++ b/contrib/binutils/include/elf/reloc-macros.h
@@ -1,5 +1,5 @@
/* Generic relocation support for BFD.
- Copyright (C) 1998 Free Software Foundation, Inc.
+ Copyright (C) 1998, 99, 2000 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@@ -27,20 +27,20 @@
START_RELOC_NUMBERS (foo)
RELOC_NUMBER (R_foo_NONE, 0)
RELOC_NUMBER (R_foo_32, 1)
- FAKE_RELOC (R_foo_illegal, 2)
- EMPTY_RELOC (R_foo_max)
- END_RELOC_NUMBERS
+ EMPTY_RELOC (R_foo_good)
+ FAKE_RELOC (R_foo_illegal, 9)
+ END_RELOC_NUMBERS (R_foo_count)
Then the following will be produced by default (ie if
RELOC_MACROS_GEN_FUNC is *not* defined).
enum foo
{
- foo = -1,
R_foo_NONE = 0,
R_foo_32 = 1,
- R_foo_illegal = 2,
- R_foo_max
+ R_foo_good,
+ R_foo_illegal = 9,
+ R_foo_count
};
If RELOC_MACROS_GEN_FUNC *is* defined, then instead the
@@ -59,7 +59,7 @@
}
}
*/
-
+
#ifndef _RELOC_MACROS_H
#define _RELOC_MACROS_H
@@ -78,16 +78,16 @@ name (rtype) \
switch (rtype) \
{
-#ifdef __STDC__
+#if defined (__STDC__) || defined (ALMOST_STDC)
#define RELOC_NUMBER(name, number) case number : return #name ;
#else
#define RELOC_NUMBER(name, number) case number : return "name" ;
#endif
-#define FAKE_RELOC(name, number)
+#define FAKE_RELOC(name, number)
#define EMPTY_RELOC(name)
-
-#define END_RELOC_NUMBERS \
+
+#define END_RELOC_NUMBERS(name) \
default: return NULL; \
} \
}
@@ -95,21 +95,11 @@ name (rtype) \
#else /* Default to generating enum. */
-/* Some compilers cannot cope with an enum that ends with a trailing
- comma, so START_RELOC_NUMBERS creates a fake reloc entry, (initialised
- to -1 so that the first real entry will still default to 0). Further
- entries then prepend a comma to their definitions, creating a list
- of enumerator entries that will satisfy these compilers. */
-#ifdef __STDC__
-#define START_RELOC_NUMBERS(name) enum name { _##name = -1
-#else
-#define START_RELOC_NUMBERS(name) enum name { name = -1
-#endif
-
-#define RELOC_NUMBER(name, number) , name = number
-#define FAKE_RELOC(name, number) , name = number
-#define EMPTY_RELOC(name) , name
-#define END_RELOC_NUMBERS };
+#define START_RELOC_NUMBERS(name) enum name {
+#define RELOC_NUMBER(name, number) name = number,
+#define FAKE_RELOC(name, number) name = number,
+#define EMPTY_RELOC(name) name,
+#define END_RELOC_NUMBERS(name) name };
#endif
diff --git a/contrib/binutils/include/elf/sh.h b/contrib/binutils/include/elf/sh.h
index faee509..6a1e561 100644
--- a/contrib/binutils/include/elf/sh.h
+++ b/contrib/binutils/include/elf/sh.h
@@ -1,5 +1,5 @@
/* SH ELF support for BFD.
- Copyright (C) 1998 Free Software Foundation, Inc.
+ Copyright (C) 1998, 2000 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@@ -76,7 +76,18 @@ START_RELOC_NUMBERS (elf_sh_reloc_type)
RELOC_NUMBER (R_SH_SWITCH8, 33)
RELOC_NUMBER (R_SH_GNU_VTINHERIT, 34)
RELOC_NUMBER (R_SH_GNU_VTENTRY, 35)
- EMPTY_RELOC (R_SH_max)
-END_RELOC_NUMBERS
+ RELOC_NUMBER (R_SH_LOOP_START, 36)
+ RELOC_NUMBER (R_SH_LOOP_END, 37)
+ FAKE_RELOC (R_SH_FIRST_INVALID_RELOC_2, 38)
+ FAKE_RELOC (R_SH_LAST_INVALID_RELOC_2, 159)
+ RELOC_NUMBER (R_SH_GOT32, 160)
+ RELOC_NUMBER (R_SH_PLT32, 161)
+ RELOC_NUMBER (R_SH_COPY, 162)
+ RELOC_NUMBER (R_SH_GLOB_DAT, 163)
+ RELOC_NUMBER (R_SH_JMP_SLOT, 164)
+ RELOC_NUMBER (R_SH_RELATIVE, 165)
+ RELOC_NUMBER (R_SH_GOTOFF, 166)
+ RELOC_NUMBER (R_SH_GOTPC, 167)
+END_RELOC_NUMBERS (R_SH_max)
#endif
diff --git a/contrib/binutils/include/elf/sparc.h b/contrib/binutils/include/elf/sparc.h
index 390e4a8..f4a199e 100644
--- a/contrib/binutils/include/elf/sparc.h
+++ b/contrib/binutils/include/elf/sparc.h
@@ -1,5 +1,5 @@
/* SPARC ELF support for BFD.
- Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
+ Copyright (C) 1996, 97, 98, 99, 2000 Free Software Foundation, Inc.
By Doug Evans, Cygnus Support, <dje@cygnus.com>.
This file is part of BFD, the Binary File Descriptor library.
@@ -134,8 +134,7 @@ START_RELOC_NUMBERS (elf_sparc_reloc_type)
RELOC_NUMBER (R_SPARC_GNU_VTINHERIT, 250)
RELOC_NUMBER (R_SPARC_GNU_VTENTRY, 251)
- EMPTY_RELOC (R_SPARC_max)
-END_RELOC_NUMBERS
+END_RELOC_NUMBERS (R_SPARC_max)
/* Relocation macros. */
diff --git a/contrib/binutils/include/elf/v850.h b/contrib/binutils/include/elf/v850.h
index d443b7f..7b22340 100644
--- a/contrib/binutils/include/elf/v850.h
+++ b/contrib/binutils/include/elf/v850.h
@@ -1,5 +1,5 @@
/* V850 ELF support for BFD.
- Copyright (C) 1997 Free Software Foundation, Inc.
+ Copyright (C) 1997, 98, 2000 Free Software Foundation, Inc.
Created by Michael Meissner, Cygnus Support <meissner@cygnus.com>
This file is part of BFD, the Binary File Descriptor library.
@@ -67,19 +67,15 @@ START_RELOC_NUMBERS (v850_reloc_type)
RELOC_NUMBER( R_V850_TDA_7_8_OFFSET, 14) /* For sst.h, sld.h */
RELOC_NUMBER( R_V850_TDA_7_7_OFFSET, 15) /* For sst.b, sld.b */
RELOC_NUMBER( R_V850_TDA_16_16_OFFSET, 16) /* For set1, clr1, not1, tst1, movea, movhi */
-/* CYGNUS LOCAL v850e */
RELOC_NUMBER( R_V850_TDA_4_5_OFFSET, 17) /* For sld.hu */
RELOC_NUMBER( R_V850_TDA_4_4_OFFSET, 18) /* For sld.bu */
RELOC_NUMBER( R_V850_SDA_16_16_SPLIT_OFFSET, 19) /* For ld.bu */
RELOC_NUMBER( R_V850_ZDA_16_16_SPLIT_OFFSET, 20) /* For ld.bu */
RELOC_NUMBER( R_V850_CALLT_6_7_OFFSET, 21) /* For callt */
RELOC_NUMBER( R_V850_CALLT_16_16_OFFSET, 22) /* For callt */
-/* END CYGNUS LOCAL */
RELOC_NUMBER (R_V850_GNU_VTINHERIT, 23)
RELOC_NUMBER (R_V850_GNU_VTENTRY, 24)
-
- EMPTY_RELOC (R_V850_max)
-END_RELOC_NUMBERS
+END_RELOC_NUMBERS (R_V850_max)
/* Processor specific section indices. These sections do not actually
diff --git a/contrib/binutils/include/elf/x86-64.h b/contrib/binutils/include/elf/x86-64.h
new file mode 100644
index 0000000..a4da0a3
--- /dev/null
+++ b/contrib/binutils/include/elf/x86-64.h
@@ -0,0 +1,46 @@
+/* x86_64 ELF support for BFD.
+ Copyright (C) 2000 Free Software Foundation, Inc.
+ Contributed by Jan Hubicka <jh@suse.cz>
+
+ 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. */
+
+#ifndef _ELF_X86_64_H
+#define _ELF_X86_64_H
+
+#include "elf/reloc-macros.h"
+
+START_RELOC_NUMBERS (elf_x86_64_reloc_type)
+ RELOC_NUMBER (R_X86_64_NONE, 0) /* No reloc */
+ RELOC_NUMBER (R_X86_64_64, 1) /* Direct 64 bit */
+ RELOC_NUMBER (R_X86_64_PC32, 2) /* PC relative 32 bit signed */
+ RELOC_NUMBER (R_X86_64_GOT32, 3) /* 32 bit GOT entry */
+ RELOC_NUMBER (R_X86_64_PLT32, 4) /* 32 bit PLT address */
+ RELOC_NUMBER (R_X86_64_COPY, 5) /* Copy symbol at runtime */
+ RELOC_NUMBER (R_X86_64_GLOB_DAT, 6) /* Create GOT entry */
+ RELOC_NUMBER (R_X86_64_JUMP_SLOT, 7) /* Create PLT entry */
+ RELOC_NUMBER (R_X86_64_RELATIVE, 8) /* Adjust by program base */
+ RELOC_NUMBER (R_X86_64_GOTPCREL, 9) /* 32 bit signed pc relative
+ offset to GOT */
+ RELOC_NUMBER (R_X86_64_32, 10) /* Direct 32 bit zero extended */
+ RELOC_NUMBER (R_X86_64_32S, 11) /* Direct 32 bit sign extended */
+ RELOC_NUMBER (R_X86_64_16, 12) /* Direct 16 bit zero extended */
+ RELOC_NUMBER (R_X86_64_PC16, 13) /* 16 bit sign extended pc relative*/
+ RELOC_NUMBER (R_X86_64_8, 14) /* Direct 8 bit sign extended */
+ RELOC_NUMBER (R_X86_64_PC8, 15) /* 8 bit sign extended pc relative*/
+END_RELOC_NUMBERS (R_X86_64_max)
+
+#endif
OpenPOWER on IntegriCloud