X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/0248680a42f0220d3b6a94c4c9a17253760abe37..7ffefb0856637762050ca248013d2b2f1cf7554e:/src/unexaix.c diff --git a/src/unexaix.c b/src/unexaix.c index 787af5ac9b..4785aa1dcb 100644 --- a/src/unexaix.c +++ b/src/unexaix.c @@ -1,5 +1,6 @@ /* Dump an executable image. - Copyright (C) 1985, 1986, 1987, 1988, 1999 Free Software Foundation, Inc. + Copyright (C) 1985, 1986, 1987, 1988, 1999, 2002, 2003, 2004, + 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Emacs. @@ -15,8 +16,8 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Emacs; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +Boston, MA 02110-1301, USA. In other words, you are welcome to use, share and improve this program. You are forbidden to forbid anyone else to use, share and improve @@ -151,9 +152,9 @@ static void write_segment (int, char *, char *); * driving logic. */ int unexec (char *new_name, char *a_name, - uintptr_t data_start, - uintptr_t bss_start, - uintptr_t entry_address) + unsigned data_start, + unsigned bss_start, + unsigned entry_address) { int new = -1, a_out = -1; @@ -175,7 +176,7 @@ int unexec (char *new_name, char *a_name, || unrelocate_symbols (new, a_out, a_name, new_name) < 0) { close (new); - return -1; + return -1; } close (new); @@ -358,7 +359,7 @@ make_hdr (int new, int a_out, s->s_scnptr += bias; ptr = s->s_scnptr; } - + ptr = ptr + s->s_size; } } @@ -413,7 +414,7 @@ make_hdr (int new, int a_out, } /* **************************************************************** - + * * Copy the text and data segments from memory to the new a.out */ @@ -589,7 +590,7 @@ unrelocate_symbols (int new, int a_out, char *a_name, char *new_name) #ifndef ALIGN_DATA_RELOC ulong d_reloc = (ulong) &_data - f_ohdr.data_start; #else - /* This worked (and was needed) before AIX 4.2. + /* This worked (and was needed) before AIX 4.2. I have no idea why. -- Mike */ ulong d_reloc = (ulong) &_data - ALIGN(f_ohdr.data_start, 2); #endif @@ -676,3 +677,6 @@ unrelocate_symbols (int new, int a_out, char *a_name, char *new_name) } return 0; } + +/* arch-tag: 0783857a-7c2d-456f-a426-58b722d69fd0 + (do not change this comment) */