/* Add an entry to the base file: */ static void mcore_emit_base_file_entry(struct bfd_link_info *info, bfd *output_bfd, asection *input_section, bfd_vma reloc_offset) { bfd_vma addr = (reloc_offset - input_section->vma + input_section->output_offset + input_section->output_section->vma); if (coff_data(output_bfd)->pe) { addr -= pe_data(output_bfd)->pe_opthdr.ImageBase; } fwrite(&addr, (size_t)1UL, sizeof(addr), (FILE *)info->base_file); }
static bfd_boolean mcore_emit_base_file_entry (struct bfd_link_info *info, bfd *output_bfd, asection *input_section, bfd_vma reloc_offset) { bfd_vma addr = reloc_offset - input_section->vma + input_section->output_offset + input_section->output_section->vma; if (coff_data (output_bfd)->pe) addr -= pe_data (output_bfd)->pe_opthdr.ImageBase; if (fwrite (&addr, sizeof (addr), 1, (FILE *) info->base_file) == 1) return TRUE; bfd_set_error (bfd_error_system_call); return FALSE; }