* elf32-hppa.c (elf_hppa_howto_table): Fill in some fields for

R_PARISC_DIR32, so that _bfd_stab_section_find_nearest_line passes
	its sanity check.
This commit is contained in:
Ian Lance Taylor 1996-09-13 19:52:14 +00:00
parent deb2a14592
commit 0a7b87358f
2 changed files with 15 additions and 5 deletions

View File

@ -1,3 +1,9 @@
Fri Sep 13 15:50:57 1996 Ian Lance Taylor <ian@cygnus.com>
* elf32-hppa.c (elf_hppa_howto_table): Fill in some fields for
R_PARISC_DIR32, so that _bfd_stab_section_find_nearest_line passes
its sanity check.
start-sanitize-m32r
Thu Sep 12 11:45:57 1996 Doug Evans <dje@seba.cygnus.com>

View File

@ -215,7 +215,7 @@ static reloc_howto_type * elf_hppa_reloc_type_lookup
static boolean elf32_hppa_set_section_contents
PARAMS ((bfd *, sec_ptr, PTR, file_ptr, bfd_size_type));
static void elf_info_to_howto
static void elf32_hppa_info_to_howto
PARAMS ((bfd *, arelent *, Elf32_Internal_Rela *));
static boolean elf32_hppa_backend_symbol_table_processing
@ -296,7 +296,9 @@ static boolean elf32_hppa_link_output_symbol_hook
static reloc_howto_type elf_hppa_howto_table[ELF_HOWTO_TABLE_SIZE] =
{
{R_PARISC_NONE, 0, 0, 0, false, 0, complain_overflow_bitfield, hppa_elf_reloc, "R_PARISC_NONE"},
{R_PARISC_DIR32, 0, 0, 32, false, 0, complain_overflow_bitfield, hppa_elf_reloc, "R_PARISC_DIR32"},
/* The values in DIR32 are to placate the check in
_bfd_stab_section_find_nearest_line. */
{R_PARISC_DIR32, 0, 2, 32, false, 0, complain_overflow_bitfield, hppa_elf_reloc, "R_PARISC_DIR32", false, 0, 0xffffffff, false},
{R_PARISC_DIR21L, 0, 0, 21, false, 0, complain_overflow_bitfield, hppa_elf_reloc, "R_PARISC_DIR21L"},
{R_PARISC_DIR17R, 0, 0, 17, false, 0, complain_overflow_bitfield, hppa_elf_reloc, "R_PARISC_DIR17R"},
{R_PARISC_DIR17F, 0, 0, 17, false, 0, complain_overflow_bitfield, hppa_elf_reloc, "R_PARISC_DIR17F"},
@ -939,12 +941,13 @@ elf32_hppa_relocate_section (output_bfd, info, input_bfd, input_section,
relocation with modifications based on format and field. */
elf32_hppa_reloc_type **
hppa_elf_gen_reloc_type (abfd, base_type, format, field, ignore)
hppa_elf_gen_reloc_type (abfd, base_type, format, field, ignore, sym)
bfd *abfd;
elf32_hppa_reloc_type base_type;
int format;
int field;
int ignore;
asymbol *sym;
{
elf32_hppa_reloc_type *finaltype;
elf32_hppa_reloc_type **final_types;
@ -1169,7 +1172,7 @@ elf32_hppa_set_section_contents (abfd, section, location, offset, count)
/* Translate from an elf into field into a howto relocation pointer. */
static void
elf_info_to_howto (abfd, cache_ptr, dst)
elf32_hppa_info_to_howto (abfd, cache_ptr, dst)
bfd *abfd;
arelent *cache_ptr;
Elf32_Internal_Rela *dst;
@ -1865,7 +1868,7 @@ elf32_hppa_backend_symbol_table_processing (abfd, esyms,symcnt)
{
symext_entryS se =
ELF32_PARISC_SX_GET (abfd,
(symextn_hdr->contents
((unsigned char *)symextn_hdr->contents
+ i * ELF32_PARISC_SX_SIZE));
unsigned int se_value = ELF32_PARISC_SX_VAL (se);
unsigned int se_type = ELF32_PARISC_SX_TYPE (se);
@ -2960,6 +2963,7 @@ error_return:
/* Symbol extension stuff. */
#define bfd_elf32_set_section_contents elf32_hppa_set_section_contents
#define elf_info_to_howto elf32_hppa_info_to_howto
#define elf_backend_symbol_table_processing \
elf32_hppa_backend_symbol_table_processing
#define elf_backend_begin_write_processing \