aboutsummaryrefslogtreecommitdiff
path: root/bfd/coff-alpha.c
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1995-11-22 19:01:43 +0000
committerIan Lance Taylor <ian@airs.com>1995-11-22 19:01:43 +0000
commita877f5917f9045bcb1b57742d6e3954e133ef325 (patch)
tree121214b015d2de932c62f4005088a7f7806c92a7 /bfd/coff-alpha.c
parent49c43d0201d2ce37d0d78e147f760b60635914da (diff)
downloadgdb-a877f5917f9045bcb1b57742d6e3954e133ef325.zip
gdb-a877f5917f9045bcb1b57742d6e3954e133ef325.tar.gz
gdb-a877f5917f9045bcb1b57742d6e3954e133ef325.tar.bz2
* ecoff.c (_bfd_ecoff_new_section_hook): Handle .rconst section.
(ecoff_sec_to_styp_flags): Likewise. (_bfd_ecoff_styp_to_sec_flags): Handle STYP_RCONST. (ecoff_set_symbol_info): Handle scRConst. (ecoff_slurp_reloc_table): Handle RELOC_SECTION_RCONST. (ecoff_compute_section_file_positions): Handle .rconst section. (_bfd_ecoff_write_object_contents): Likewise. (ecoff_link_check_archive_element): Handle scRConst. (ecoff_link_add_externals): Likewise. (ecoff_link_write_external): Handle .rconst section. (ecoff_reloc_link_order): Likewise. * ecofflink.c (bfd_ecoff_debug_accumulate): Handle scRConst. * coff-alpha.c (alpha_convert_external_reloc): Handle .rconst section. (alpha_relocate_section): Handle RELOC_SECTION_RCONST.
Diffstat (limited to 'bfd/coff-alpha.c')
-rw-r--r--bfd/coff-alpha.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/bfd/coff-alpha.c b/bfd/coff-alpha.c
index bc140a1..7675c56 100644
--- a/bfd/coff-alpha.c
+++ b/bfd/coff-alpha.c
@@ -1309,6 +1309,8 @@ alpha_convert_external_reloc (output_bfd, info, input_bfd, ext_rel, h)
case 'r':
if (strcmp (name, ".rdata") == 0)
r_symndx = RELOC_SECTION_RDATA;
+ else if (strcmp (name, ".rconst") == 0)
+ r_symndx = RELOC_SECTION_RCONST;
break;
case 's':
if (strcmp (name, ".sdata") == 0)
@@ -1421,6 +1423,8 @@ alpha_relocate_section (output_bfd, info, input_bfd, input_section,
symndx_to_section[RELOC_SECTION_LITA] =
bfd_get_section_by_name (input_bfd, ".lita");
symndx_to_section[RELOC_SECTION_ABS] = bfd_abs_section_ptr;
+ symndx_to_section[RELOC_SECTION_RCONST] =
+ bfd_get_section_by_name (input_bfd, ".rconst");
ecoff_data (input_bfd)->symndx_to_section = symndx_to_section;
}
@@ -1976,7 +1980,7 @@ static const struct ecoff_backend_data alpha_ecoff_backend_data =
alpha_ecoff_bad_format_hook, _bfd_ecoff_set_arch_mach_hook,
alpha_ecoff_mkobject_hook, _bfd_ecoff_styp_to_sec_flags,
_bfd_ecoff_set_alignment_hook, _bfd_ecoff_slurp_symbol_table,
- NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL
+ NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL
},
/* Supported architecture. */
bfd_arch_alpha,
@@ -2053,6 +2057,10 @@ static const struct ecoff_backend_data alpha_ecoff_backend_data =
#define _bfd_ecoff_bfd_get_relocated_section_contents \
alpha_ecoff_get_relocated_section_contents
+/* Handling file windows is generic. */
+#define _bfd_ecoff_get_section_contents_in_window \
+ _bfd_generic_get_section_contents_in_window
+
/* Relaxing sections is generic. */
#define _bfd_ecoff_bfd_relax_section bfd_generic_relax_section