view src/unexfx2800.c @ 16853:63f2ad395c81

Include <mach-o/reloc.h>. (fgrowth): Initialize to zero. (vmaddr_growth, dataseg_vmaddr, dataseg_vmend): New variables. [NS_TARGET] (extreloff, nextrel, dysymtab, reloc_info): New variables. (unexec_doit): Adjust file offsets of segments that follow the enlarged data segment. Adjust vmaddr of the SEG_LINKEDIT segment that follows the data segment. [NS_TARGET] (unexec_doit): Adjust file offsets in the LC_DYSYMTAB load command that follows the data segment. Zero out relocation entries that fall within the data segment.
author Richard M. Stallman <rms@gnu.org>
date Fri, 10 Jan 1997 02:53:35 +0000
parents 79ea818b6aed
children
line wrap: on
line source

/* Unexec for the Alliant FX/2800.  */

#include <stdio.h>

unexec (new_name, a_name, data_start, bss_start, entry_address)
     char *new_name, *a_name;
     unsigned data_start, bss_start, entry_address;
{
  int stat;
    
  stat = elf_write_modified_data (a_name, new_name);
  if (stat < 0)
    perror ("emacs: elf_write_modified_data");
  else if (stat > 0)
    fprintf (stderr, "Unspecified error from elf_write_modified_data.\n");
}