* [Caml-list] recompiling ocamlnet & PXP with 3.05 @ 2002-07-30 19:01 Alexander V.Voinov 2002-07-30 21:18 ` [Caml-list] Bugfix for ocaml-3.05 problem (was: recompiling ocamlnet & PXP with 3.05) Gerd Stolpmann 0 siblings, 1 reply; 3+ messages in thread From: Alexander V.Voinov @ 2002-07-30 19:01 UTC (permalink / raw) To: caml-list Hi ocamlc crashes at some of the sources of the mentioned modules. Under Linux/x86 it crashed on ocamlfind ocamlc -g -package "netstring" -c pxp_document.ml ocamlc got signal and exited Under Solaris/Sparc it crashed on the netstring as well. Netstring (and PXP) compiled OK in the same environment under 3.04. Alexander ------------------- 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 ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Caml-list] Bugfix for ocaml-3.05 problem (was: recompiling ocamlnet & PXP with 3.05) 2002-07-30 19:01 [Caml-list] recompiling ocamlnet & PXP with 3.05 Alexander V.Voinov @ 2002-07-30 21:18 ` Gerd Stolpmann 2002-07-31 3:44 ` Alexander V. Voinov 0 siblings, 1 reply; 3+ messages in thread From: Gerd Stolpmann @ 2002-07-30 21:18 UTC (permalink / raw) To: Alexander V.Voinov; +Cc: caml-list [-- Attachment #1: Type: text/plain, Size: 1711 bytes --] On 2002.07.30 21:01 Alexander V.Voinov wrote: > Hi > > ocamlc crashes at some of the sources of the mentioned modules. > > Under Linux/x86 it crashed on > > ocamlfind ocamlc -g -package "netstring" -c pxp_document.ml > ocamlc got signal and exited > > Under Solaris/Sparc it crashed on the netstring as well. Netstring > (and PXP) compiled OK in the same environment under 3.04. Hi, yesterday I already got a similar report from Michaël Marchegay, and I could reproduce the problem. I submitted a bug report (23:44), and Xavier Leroy and Damien Doligez fixed the problem until 15:36. Really phantastic response time! You can read the bug report with some more details how to circumvent the problem: http://caml.inria.fr/bin/caml-bugs/fixed?id=1273;page=44;user=guest For your convenience, I have the attached the patch. Apply it as follows: cd ocaml-3.05/byterun patch -p0 <../../whereever-your-patch-is/patch Then rebuild the whole system: cd .. make clean make world opt opt.opt It would be sufficient to rebuild ocamlrun and all statically linked binaries, there is no change in the libraries (except libcamlrun.a), but I don't know how to do this. I think O'Caml-3.05 is still worth to be tried, there are numerous improvements, and at least for me this GC bug does not prevent me from using this version. It is not a fundamental problem, only a single error. Gerd -- ---------------------------------------------------------------------------- Gerd Stolpmann Telefon: +49 6151 997705 (privat) Viktoriastr. 45 64293 Darmstadt EMail: gerd@gerd-stolpmann.de Germany ---------------------------------------------------------------------------- [-- Attachment #2: ocaml-3.05-gc.patch --] [-- Type: text/plain, Size: 2119 bytes --] Index: byterun/major_gc.c =================================================================== RCS file: /net/pauillac/caml/repository/csl/byterun/major_gc.c,v retrieving revision 1.37 retrieving revision 1.39 diff -u -r1.37 -r1.39 --- major_gc.c 2002/06/05 12:11:15 1.37 +++ major_gc.c 2002/07/30 13:48:52 1.39 @@ -11,7 +11,7 @@ /* */ /***********************************************************************/ -/* $Id: major_gc.c,v 1.37 2002/06/05 12:11:15 doligez Exp $ */ +/* $Id: major_gc.c,v 1.39 2002/07/30 13:48:52 xleroy Exp $ */ #include <limits.h> @@ -126,15 +126,12 @@ if (Tag_hd (hd) < No_scan_tag){ for (i = 0; i < size; i++){ child = Field (v, i); - mark_again: if (Is_block (child) && Is_in_heap (child)) { hd = Hd_val(child); if (Tag_hd (hd) == Forward_tag){ - child = Forward_val (child); - Field (v, i) = child; - goto mark_again; + Field (v, i) = Forward_val (child); } - if (Tag_hd(hd) == Infix_tag) { + else if (Tag_hd(hd) == Infix_tag) { child -= Infix_offset_val(child); hd = Hd_val(child); } @@ -192,15 +189,13 @@ sz = Wosize_hd (hd); for (i = 1; i < sz; i++){ curfield = Field (cur, i); - weak_again: - if (curfield != 0 && Is_block (curfield) && Is_in_heap (curfield) - && Is_white_val (curfield)){ + if (curfield != 0 && Is_block (curfield) && Is_in_heap (curfield)){ if (Tag_val (curfield) == Forward_tag){ - curfield = Forward_val (curfield); - Field (cur, i) = curfield; - goto weak_again; + Field (cur, i) = Forward_val (curfield); } - Field (cur, i) = 0; + else if (Is_white_val (curfield)){ + Field (cur, i) = 0; + } } } weak_prev = &Field (cur, 0); ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Caml-list] Bugfix for ocaml-3.05 problem (was: recompiling ocamlnet & PXP with 3.05) 2002-07-30 21:18 ` [Caml-list] Bugfix for ocaml-3.05 problem (was: recompiling ocamlnet & PXP with 3.05) Gerd Stolpmann @ 2002-07-31 3:44 ` Alexander V. Voinov 0 siblings, 0 replies; 3+ messages in thread From: Alexander V. Voinov @ 2002-07-31 3:44 UTC (permalink / raw) To: Gerd Stolpmann; +Cc: caml-list Hi Gerd, It helped with the first part of the problem below (on Linux). But under Solaris it still crashes at: ocamlfind ocamlc -g -package "unix pcre" -thread -c netstring_pcre.mli Unfortunately this moment I can't spend enough time to trace it within the compiler. Alexander Gerd Stolpmann wrote: > > On 2002.07.30 21:01 Alexander V.Voinov wrote: > > Hi > > > > ocamlc crashes at some of the sources of the mentioned modules. > > > > Under Linux/x86 it crashed on > > > > ocamlfind ocamlc -g -package "netstring" -c pxp_document.ml > > ocamlc got signal and exited > > > > Under Solaris/Sparc it crashed on the netstring as well. Netstring > > (and PXP) compiled OK in the same environment under 3.04. > > Hi, > > yesterday I already got a similar report from Michaël Marchegay, and > I could reproduce the problem. I submitted a bug report (23:44), > and Xavier Leroy and Damien Doligez fixed the problem until 15:36. > Really phantastic response time! > > You can read the bug report with some more details how to > circumvent the problem: > > http://caml.inria.fr/bin/caml-bugs/fixed?id=1273;page=44;user=guest > > For your convenience, I have the attached the patch. Apply it > as follows: > > cd ocaml-3.05/byterun > patch -p0 <../../whereever-your-patch-is/patch > > Then rebuild the whole system: > > cd .. > make clean > make world opt opt.opt > > It would be sufficient to rebuild ocamlrun and all statically linked > binaries, there is no change in the libraries (except libcamlrun.a), > but I don't know how to do this. > > I think O'Caml-3.05 is still worth to be tried, there are numerous > improvements, and at least for me this GC bug does not prevent me > from using this version. It is not a fundamental problem, only a > single error. > > Gerd > -- > ---------------------------------------------------------------------------- > Gerd Stolpmann Telefon: +49 6151 997705 (privat) > Viktoriastr. 45 > 64293 Darmstadt EMail: gerd@gerd-stolpmann.de > Germany > ---------------------------------------------------------------------------- > > ------------------------------------------------------------------------ > > ocaml-3.05-gc.patchName: ocaml-3.05-gc.patch > Type: Plain Text (text/plain) ------------------- 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 ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2002-07-31 3:43 UTC | newest] Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2002-07-30 19:01 [Caml-list] recompiling ocamlnet & PXP with 3.05 Alexander V.Voinov 2002-07-30 21:18 ` [Caml-list] Bugfix for ocaml-3.05 problem (was: recompiling ocamlnet & PXP with 3.05) Gerd Stolpmann 2002-07-31 3:44 ` Alexander V. Voinov
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox