Browse thread
[Caml-list] Ocaml and 64 bit address spaces?
-
Niall Dalton
-
Xavier Leroy
- Aleksey Nogin
- Niall Dalton
-
Xavier Leroy
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: | 2003-11-12 (23:29) |
From: | Aleksey Nogin <nogin@c...> |
Subject: | [Caml-list] Ocaml program crashes on Opteron |
I've been trying to use OCaml 3.07 on an Opteron machine running the latest Fedora Core development (AKA Red Hat Rawhide) with a binary kernel from Mandrake 9.2beta3. I've successfully compiled Ocaml 3.07, but when I compile our "omake" system with it, omake segfaults in a reproducible fashion (it reliably works for some things and reliably crashes for others). After compiling omake with "ocamlopt.opt -inline 0 -ccopt -g -cc gcc32 -S -verbose", and then re-running the last linking step with .s files instead of .o files (to get debugging information tied to the assembly files), I get from gdb: > ... > Program received signal SIGSEGV, Segmentation fault. > Omake_wild__wild_subst_429 () at omake_wild.s:419 > 419 movzbq -8(%rbx), %rdi > Current language: auto; currently asm > (gdb) bt > #0 Omake_wild__wild_subst_429 () at omake_wild.s:419 > #1 0x0000002a9557ae00 in ?? () > #2 0x000000000044fa02 in List__map_86 () > #3 0x0000002a95c9b698 in ?? () > #4 0x0000002a9557a508 in ?? () > #5 0x0000002a95cdc780 in ?? () > #6 0x000000000041df9a in Omake_env__collect_3575 () at omake_env.s:1780 > ... The relevant part of omake_wild.s is: > ... > .text > .align 16 > .globl Omake_wild__wild_subst_429 > Omake_wild__wild_subst_429: > subq $8, %rsp > .L145: > movzbq -8(%rbx), %rdi <<< it crashes here <<< > testq %rdi, %rdi > je .L144 > ... (note that there are no references to L145 in that file) and the Ocaml code for Omake_wild.wild_subst is: > let wild_subst (len, s) wild = > match wild with > WildLiteral node -> > WildNode node > | WildSplit (plen, prefix, slen, suffix) -> > WildString (prefix ^ s ^ suffix) > and it is being called from > match search patterns with > Some subst -> > let source_args = List.map (wild_subst subst) sources in Some additional information (full back trace, register contents, etc) is available at http://cvs.metaprl.org:12000/bugzilla/show_bug.cgi?id=111 Any guesses as to what might be causing this? Any hints on what I could do to invertigate this further? -- Aleksey Nogin Home Page: http://nogin.org/ E-Mail: nogin@cs.caltech.edu (office), aleksey@nogin.org (personal) Office: Jorgensen 70, tel: (626) 395-2907 ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners