aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPaul Eggert2014-05-21 22:00:39 -0700
committerPaul Eggert2014-05-21 22:00:39 -0700
commit4f4ec76fd68d21c3d3838f5f10e242a884598c40 (patch)
tree7f5bba96be2bf67382394307d71ea93242c9686c /src
parentfb4ca8417a1fc7a39d36162a80647063aadb0b41 (diff)
downloademacs-4f4ec76fd68d21c3d3838f5f10e242a884598c40.tar.gz
emacs-4f4ec76fd68d21c3d3838f5f10e242a884598c40.zip
Fix port to 32-bit AIX.
* configure.ac (opsys): On Power Architecture, treat release 7 of AIX like releases 5 and 6. * src/unexaix.c (copy_text_and_data): Don't add text_scnptr to ptr twice. _text already includes this offset. (unrelocate_symbols): Don't cast 64-bit integer to pointer. Fixes: debbugs:17540
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog7
-rw-r--r--src/unexaix.c4
2 files changed, 9 insertions, 2 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 1e6bdcb4999..256eeeaa4b3 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,10 @@
12014-05-22 Paul Eggert <eggert@cs.ucla.edu>
2
3 Fix port to 32-bit AIX (Bug#17540).
4 * unexaix.c (copy_text_and_data): Don't add text_scnptr to ptr
5 twice. _text already includes this offset.
6 (unrelocate_symbols): Don't cast 64-bit integer to pointer.
7
12014-05-21 Eli Zaretskii <eliz@gnu.org> 82014-05-21 Eli Zaretskii <eliz@gnu.org>
2 9
3 * xdisp.c (move_it_in_display_line_to): Avoid infinite recursion: 10 * xdisp.c (move_it_in_display_line_to): Avoid infinite recursion:
diff --git a/src/unexaix.c b/src/unexaix.c
index c08d192b32c..c97d5cae2a8 100644
--- a/src/unexaix.c
+++ b/src/unexaix.c
@@ -379,7 +379,7 @@ copy_text_and_data (int new)
379 char *ptr; 379 char *ptr;
380 380
381 lseek (new, text_scnptr, SEEK_SET); 381 lseek (new, text_scnptr, SEEK_SET);
382 ptr = _text + text_scnptr; 382 ptr = _text;
383 end = ptr + f_ohdr.tsize; 383 end = ptr + f_ohdr.tsize;
384 write_segment (new, ptr, end); 384 write_segment (new, ptr, end);
385 385
@@ -606,7 +606,7 @@ unrelocate_symbols (int new, int a_out,
606 PERROR (a_name); 606 PERROR (a_name);
607 } 607 }
608 608
609 p = (int *) (ldrel.l_vaddr + d_reloc); 609 p = (int *) (intptr_t) (ldrel.l_vaddr + d_reloc);
610 610
611 switch (ldrel.l_symndx) { 611 switch (ldrel.l_symndx) {
612 case SYMNDX_TEXT: 612 case SYMNDX_TEXT: