On 02/13/2013 03:33 PM, Glenn Morris wrote: > since it apparently worked in Emacs 24.2, then in emacs-24 > branch at this stage we should just do the minimum to get > it back to that working state, and save improvements for trunk. We can certainly give that a try. Looking at unexaix.c, the changes made between 24.2 and 24.2.93 are small. The first change to unexaix.c, in emacs-24 bzr 108226 , fixed a bug privately reported to me by Gilles on 2012-05-09; he already tested this so it shouldn't be the problem. The remaining changes are small: it shouldn't hurt to undo them but the real problem surely lies elsewhere. I see two main suspects. First, we got rid of DATA_START and DATA_SEG_BITS on AIX. Second, USE_LSB_TAG changed from 0 to 1 on AIX. And now that I look at the code again, I see a serious bug in Emacs 24.2.93's src/lisp.h when DATA_SEG_BITS is nonzero: it mis-defines XPNTR as if DATA_SEG_BITS were zero. This is a regression and should be fixed in emacs-24 regardless of the AIX fixes, I expect. So: Gilles, can you please try the following? First, aply the attached patch to a fresh copy of emacs-24.2.93. Then, run these shell commands: ./configure CPPFLAGS='-DDATA_START=0x20000000 -DDATA_SEG_BITS=0x20000000 -DUSE_LSB_TAG=0' make If this works, I'll have some followup questions and proposed changes; the point of the above is to try to test reverting to 24.2's approach as quickly and painlessly as possible, without reverting all the other changes we've made.