aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/elf/ChangeLog8
-rw-r--r--include/elf/mmix.h21
2 files changed, 27 insertions, 2 deletions
diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog
index 10c05d8..5df88bed 100644
--- a/include/elf/ChangeLog
+++ b/include/elf/ChangeLog
@@ -1,3 +1,11 @@
+2002-02-01 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * mmix.h: Tweak comments.
+ (MMIX_LD_ALLOCATED_REG_CONTENTS_SECTION_NAME): New.
+ [BFD_ARCH_SIZE] (_bfd_mmix_prepare_linker_allocated_gregs,
+ _bfd_mmix_finalize_linker_allocated_gregs,
+ _bfd_mmix_check_all_relocs): Provide prototypes.
+
2002-01-31 Ivan Guzvinec <ivang@opencores.org>
* or32.h: New file.
diff --git a/include/elf/mmix.h b/include/elf/mmix.h
index fa367e5..e3be26b 100644
--- a/include/elf/mmix.h
+++ b/include/elf/mmix.h
@@ -1,5 +1,5 @@
/* MMIX support for BFD.
- Copyright (C) 2001 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2002 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@@ -82,7 +82,10 @@ START_RELOC_NUMBERS (elf_mmix_reloc_type)
/* A general register. */
RELOC_NUMBER (R_MMIX_REG, 33)
- /* A global register and an offset, equivalent of the expression. */
+ /* A global register and an offset, the global register (allocated at
+ link time) contents plus the offset made equivalent to the relocation
+ expression at link time. The relocation must point at the Y field of
+ an instruction. */
RELOC_NUMBER (R_MMIX_BASE_PLUS_OFFSET, 34)
/* A LOCAL assertion. */
@@ -107,6 +110,11 @@ END_RELOC_NUMBERS (R_MMIX_max)
unspecified) ABI. */
#define MMIX_REG_CONTENTS_SECTION_NAME ".MMIX.reg_contents"
+/* At link time, a section by this name is created, expected to be
+ included in MMIX_REG_CONTENTS_SECTION_NAME in the output. */
+#define MMIX_LD_ALLOCATED_REG_CONTENTS_SECTION_NAME \
+ ".MMIX.reg_contents.linker_allocated"
+
/* This is a faked section holding symbols with SHN_REGISTER. Don't
confuse it with MMIX_REG_CONTENTS_SECTION_NAME; this one has no
contents, just values. It is an error for a value in this section to
@@ -148,4 +156,13 @@ END_RELOC_NUMBERS (R_MMIX_max)
#define MMO_SEC_IS_COMMON 0x8000
#define MMO_SEC_DEBUGGING 0x10000
+#ifdef BFD_ARCH_SIZE
+extern boolean _bfd_mmix_prepare_linker_allocated_gregs
+ PARAMS ((bfd *, struct bfd_link_info *));
+extern boolean _bfd_mmix_finalize_linker_allocated_gregs
+ PARAMS ((bfd *, struct bfd_link_info *));
+extern boolean _bfd_mmix_check_all_relocs
+ PARAMS ((bfd *, struct bfd_link_info *));
+#endif
+
#endif /* ELF_MMIX_H */