r_type = ELF32_R_TYPE (dst->r_info);
if (r_type >= R_I370_max)
{
- (*_bfd_error_handler) (_("%B: unrecognised I370 reloc number: %d"),
- abfd, r_type);
+ _bfd_error_handler (_("%B: unrecognised I370 reloc number: %d"),
+ abfd, r_type);
bfd_set_error (bfd_error_bad_value);
r_type = R_I370_NONE;
}
object file when linking. */
static bfd_boolean
-i370_elf_merge_private_bfd_data (bfd *ibfd, bfd *obfd)
+i370_elf_merge_private_bfd_data (bfd *ibfd, struct bfd_link_info *info)
{
+ bfd *obfd = info->output_bfd;
flagword old_flags;
flagword new_flags;
else /* Incompatible flags. */
{
- (*_bfd_error_handler)
+ _bfd_error_handler
("%B: uses different e_flags (0x%lx) fields than previous modules (0x%lx)",
ibfd, (long) new_flags, (long) old_flags);
{
asection *s;
- s = bfd_get_section_by_name (output_bfd, name);
+ s = bfd_get_linker_section (dynobj, name);
if (s == NULL)
dyn.d_un.d_val = 0;
else
{
if (! size)
- dyn.d_un.d_ptr = s->vma;
+ dyn.d_un.d_ptr = s->output_section->vma + s->output_offset;
else
dyn.d_un.d_val = s->size;
}
if ((unsigned) r_type >= (unsigned) R_I370_max
|| !i370_elf_howto_table[(int)r_type])
{
- (*_bfd_error_handler) ("%B: unknown relocation type %d",
- input_bfd,
- (int) r_type);
+ _bfd_error_handler ("%B: unknown relocation type %d",
+ input_bfd, (int) r_type);
bfd_set_error (bfd_error_bad_value);
ret = FALSE;
;
else if (!bfd_link_relocatable (info))
{
- if ((*info->callbacks->undefined_symbol)
- (info, h->root.root.string, input_bfd,
- input_section, rel->r_offset,
- (info->unresolved_syms_in_objects == RM_GENERATE_ERROR
- || ELF_ST_VISIBILITY (h->other))))
- {
- ret = FALSE;
- continue;
- }
+ (*info->callbacks->undefined_symbol)
+ (info, h->root.root.string, input_bfd,
+ input_section, rel->r_offset,
+ (info->unresolved_syms_in_objects == RM_GENERATE_ERROR
+ || ELF_ST_VISIBILITY (h->other)));
+ ret = FALSE;
+ continue;
}
}
switch ((int) r_type)
{
default:
- (*_bfd_error_handler)
+ _bfd_error_handler
("%B: unknown relocation type %d for symbol %s",
input_bfd, (int) r_type, sym_name);
case (int) R_I370_COPY:
case (int) R_I370_RELATIVE:
- (*_bfd_error_handler)
+ _bfd_error_handler
("%B: Relocation %s is not yet supported for symbol %s.",
input_bfd,
i370_elf_howto_table[(int) r_type]->name,