Version française
Home     About     Download     Resources     Contact us    
Browse thread
bus error in ocamlopt.opt when doing "make opt.opt" on sparc64
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Kip Macy <kip.macy@g...>
Subject: bus error in ocamlopt.opt when doing "make opt.opt" on sparc64
It appears that init_atoms passes minmax_table a 4-byte aligned address.

../boot/ocamlrun ../ocamlopt -nostdlib -I ../stdlib -I ../utils -I
../parsing -I ../typing -I ../bytecomp -I ../asmcomp  -I ../driver -o
ocamldep.opt misc.cmx config.cmx clflags.cmx terminfo.cmx linenum.cmx
warnings.cmx location.cmx longident.cmx syntaxerr.cmx parser.cmx
lexer.cmx parse.cmx  depend.cmx ocamldep.cmx
cd camlp4; make opt.opt
set -e; for i in lib odyl camlp4 meta etc compile; do cd $i; make opt;
cd ..; done
cp odyl_config.ml odyl_config.ppo
../../ocamlcompopt.sh -warn-error A -I ../../otherlibs/dynlink -c
-impl odyl_config.ppo
Bus error (core dumped)
*** Error code 138

Stop in /shared/ocaml-3.09.3/camlp4/odyl.
*** Error code 1


%gdb ocamlopt.opt camlp4/odyl/ocamlopt.opt.core
GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "sparc64-marcel-freebsd"...
Core was generated by `ocamlopt.opt'.
Program terminated with signal 10, Bus error.
Reading symbols from /lib/libm.so.4...done.
Loaded symbols for /lib/libm.so.4
Reading symbols from /lib/libc.so.7...done.
Loaded symbols for /lib/libc.so.7
Reading symbols from /libexec/ld-elf.so.1...done.
Loaded symbols for /libexec/ld-elf.so.1
#0  0x0000000000250780 in minmax_table ()
(gdb) bt
#0  0x0000000000250780 in minmax_table ()
#1  0x0000000000250848 in init_atoms ()
#2  0x0000000000250ad0 in caml_main ()
#3  0x000000000023ed6c in main ()
(gdb) x/i $pc
0x250780 <minmax_table>:        ldx  [ %o0 ], %g1
(gdb) p/x $o0
$2 = 0x353b84