all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Compiling 64 bit emacs for Power4/Aix-5.2
@ 2003-05-07  5:06 Larry Hunter
  0 siblings, 0 replies; 4+ messages in thread
From: Larry Hunter @ 2003-05-07  5:06 UTC (permalink / raw)



This bug report will be sent to the Free Software Foundation,
not to your local site managers!
Please write in English, because the Emacs maintainers do not have
translators to read other languages for them.

Your bug report will be posted to the bug-gnu-emacs@gnu.org mailing list,
and to the gnu.emacs.bug news group.

In GNU Emacs 21.2.1 (rs6000-ibm-aix5.1.0.0, X toolkit)
 of 2003-03-03 on hal
configured using `configure  --host=rs6000-ibm-aix5.1.0.0'
Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: en_US
  locale-coding-system: iso-latin-1
  default-enable-multibyte-characters: t

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:

I am trying to compile emacs in 64 bit mode (for large buffers) on an
IBM p690.  It's a Power4 processor running AIX 5.2

An emacs 21.2 distributed by IBM compiles with the native cc (xlc)
using 32 bit mode: `configure --host=rs6000-ibm-aix5.1.0.0'.  I
figured I would start from that to try to move to 64 bit mode.  The OS
and Machine files used are `s/aix4-2.h' and `m/ibmrs6000.h'  This bug
report was generated from within the working 32 bit version.

So far, I have changed lwlib/Makefile.in to use the -X64 flag in AR:

               AR = ar -X64 cq

and done 

  CFLAGS='-q64 -qarch=pwr4' LDFLAGS='-q64 -qarch=pwr4' ./configure  --host=rs6000-ibm-aix5.1.0.0 

"make" works through invoking temacs, but then segfaults:

	LC_ALL=C ./temacs -batch -l loadup dump
make: 1254-059 The signal code from the last command is 11.

A backtrace shows the problem is in Fmake_symbol: 

# dbx ./temacs core
Type 'help' for help.
[using memory image in core]
reading symbolic information ...

Segmentation fault in Fmake_symbol at 0x10003c0e4 ($t1)
0x10003c0e4 (Fmake_symbol+0x154) f8640000        std   r3,0x0(r4)
(dbx) where
Fmake_symbol(0x300000011003e4f8) at 0x10003c0e4
init_obarray() at 0x100058b10
main(0x500000005, 0x200feae0, 0x200feb10) at 0x100000e8c

The PROBLEMS advice about temacs segfaults are to check the amount of
swap space, but it's enormous (>64GB) on this machine. 

So I am stumped.  Suggestions?

Thanks!

Larry

Larry.Hunter@uchsc.edu


Recent input:
SPC c o r e RET w h e r e RET b a c k RET ? DEL h e 
l p DEL DEL DEL DEL ? RET h e l p RET ESC [ 5 ~ ESC 
[ 6 ~ C-x o C-x o ESC > t r a c e RET p r i n t RET 
e x i t RET q DEL q u i t RET ESC [ 5 ~ ESC [ 5 ~ ESC 
[ 6 ~ ESC x m DEL r e p o r t - e m SPC SPC RET

Recent messages:
Completing command name...
Partially completed
/codebase/emacs-21.2/src 
History item: 1
History item: 2
History item: 3
History item: 4
History item: 1
History item: 2
Mark set

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Compiling 64 bit emacs for Power4/Aix-5.2
       [not found] <mailman.5770.1052408906.21513.bug-gnu-emacs@gnu.org>
@ 2003-05-08 20:08 ` Larry Hunter
       [not found] ` <mailman.5789.1052424704.21513.bug-gnu-emacs@gnu.org>
  1 sibling, 0 replies; 4+ messages in thread
From: Larry Hunter @ 2003-05-08 20:08 UTC (permalink / raw)
  Cc: bug-gnu-emacs

The following message is a courtesy copy of an article
that has been posted to gnu.emacs.bug as well.


Thanks to Mike Dugan for suggesting the problem may be with unexec not
knowing about 64 bit a.out. However, specifying CANNOT_DUMP doesn't
help -- ./temacs still segfaults.  

This may be another hint

  # dbx ./temacs core
  Segmentation fault in Fmake_symbol at line 2543 in file "alloc.c" ($t1)
   2543     p->name = XSTRING (name);
  (dbx) where
  Fmake_symbol(name = 648518346342363900), line 2543 in "alloc.c"
  init_obarray(), line 3165 in "lread.c"
  main(argc = 0, argv = (nil), envp = (nil)), line 1092 in "emacs.c"
  (dbx) 

So, XSTRING is supposed to return a pointer to a lisp string. Might I
need to set something to define the size of pointers?   

Be gentle, it's been a long time since I did much C programming... 

Larry


-- 

Lawrence Hunter, Ph.D.
Director, Center for Computational Pharmacology
Associate Professor of Pharmacology, PMB & Computer Science

phone  +1 303 315 1094           UCHSC, Campus Box C236    
fax    +1 303 315 1098           School of Medicine rm 2817b   
cell   +1 303 324 0355           4200 E. 9th Ave.                 
email: Larry.Hunter@uchsc.edu    Denver, CO 80262       
PGP key on public keyservers     http://compbio.uchsc.edu/hunter

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Compiling 64 bit emacs for Power4/Aix-5.2
       [not found] ` <mailman.5789.1052424704.21513.bug-gnu-emacs@gnu.org>
@ 2003-05-10  0:26   ` Larry Hunter
  2003-05-10  9:08     ` Eli Zaretskii
  0 siblings, 1 reply; 4+ messages in thread
From: Larry Hunter @ 2003-05-10  0:26 UTC (permalink / raw)
  Cc: bug-gnu-emacs

The following message is a courtesy copy of an article
that has been posted to gnu.emacs.bug as well.


Next steps in the saga of trying to compile a 64 bit emacs for
power4/AIX. I defined an m/ibmpower4.h file with the following:

#define BITS_PER_LONG		64
#define BITS_PER_EMACS_INT	64
#define NO_ARG_ARRAY
#define NO_UNION_TYPE
#define EMACS_INT		long
#define EMACS_UINT		unsigned long
#define SPECIAL_EMACS_INT
#define VALBITS         60
#define PNTR_COMPARISON_TYPE unsigned long
#define XPNTR(a) XUINT (a)

I don't yet have an unexec working, but doing CANNOT_DUMP, I do get as
far as a temacs that can do loadup. However, as soon as I start the
temacs, I get

"Warning: past acceptable memory limits"

So it appears that I am missing some declaration about how large
the address space really is, or something like that.  

Any ideas? 

-- 

Lawrence Hunter, Ph.D.
Director, Center for Computational Pharmacology
Associate Professor of Pharmacology, PMB & Computer Science

phone  +1 303 315 1094           UCHSC, Campus Box C236    
fax    +1 303 315 1098           School of Medicine rm 2817b   
cell   +1 303 324 0355           4200 E. 9th Ave.                 
email: Larry.Hunter@uchsc.edu    Denver, CO 80262       
PGP key on public keyservers     http://compbio.uchsc.edu/hunter

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Compiling 64 bit emacs for Power4/Aix-5.2
  2003-05-10  0:26   ` Larry Hunter
@ 2003-05-10  9:08     ` Eli Zaretskii
  0 siblings, 0 replies; 4+ messages in thread
From: Eli Zaretskii @ 2003-05-10  9:08 UTC (permalink / raw)
  Cc: bug-gnu-emacs

> Newsgroups: gnu.emacs.bug
> From: Larry Hunter <Larry.Hunter@uchsc.edu>
> Date: 09 May 2003 18:26:54 -0600
> 
> I don't yet have an unexec working, but doing CANNOT_DUMP, I do get as
> far as a temacs that can do loadup. However, as soon as I start the
> temacs, I get
> 
> "Warning: past acceptable memory limits"
> 
> So it appears that I am missing some declaration about how large
> the address space really is, or something like that.  

You should probably look at the definitions of the macros
DATA_SEG_BITS, DATA_SECTION_ALIGNMENT, DATA_START, and DATA_END.  See
the files src/s/*.h and src/m/*.h for examples of how these are used.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2003-05-10  9:08 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <mailman.5770.1052408906.21513.bug-gnu-emacs@gnu.org>
2003-05-08 20:08 ` Compiling 64 bit emacs for Power4/Aix-5.2 Larry Hunter
     [not found] ` <mailman.5789.1052424704.21513.bug-gnu-emacs@gnu.org>
2003-05-10  0:26   ` Larry Hunter
2003-05-10  9:08     ` Eli Zaretskii
2003-05-07  5:06 Larry Hunter

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.