<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE message PUBLIC
  "-//MLarc//DTD MLarc output files//EN"
  "../../mlarc.dtd"[
  <!ATTLIST message
    listname CDATA #REQUIRED
    title CDATA #REQUIRED
  >
]>

  <?xml-stylesheet href="../../mlarc.xsl" type="text/xsl"?>


<message 
  url="2002/12/e3f8675313507a5dc091342fdb22aaf5"
  from="Markus Mottl &lt;markus@o...&gt;"
  author="Markus Mottl"
  date="2002-12-05T19:15:09"
  subject="Re: [Caml-list] Memory leak with native code."
  prev="2002/12/e39e48c52e7ed2ec723bb0d96798451f"
  next="2002/12/019830184ea14462c3df69900b5a0cda"
  prev-in-thread="2002/12/e39e48c52e7ed2ec723bb0d96798451f"
  next-in-thread="2002/12/c09fe24875cadf527935c7650ed7fbf5"
  prev-thread="2002/12/4b291d6b55cf57ba30215d1019be5195"
  next-thread="2002/12/be49727f9a0b54ea11c73a1fa9e19c68"
  root="../../"
  period="month"
  listname="caml-list"
  title="Archives of the Caml mailing list">

<thread subject="[Caml-list] Memory leak with native code.">
<msg 
  url="2002/12/e39e48c52e7ed2ec723bb0d96798451f"
  from="David Brown &lt;caml-list@d...&gt;"
  author="David Brown"
  date="2002-12-05T18:48:56"
  subject="[Caml-list] Memory leak with native code.">
<msg 
  url="2002/12/e3f8675313507a5dc091342fdb22aaf5"
  from="Markus Mottl &lt;markus@o...&gt;"
  author="Markus Mottl"
  date="2002-12-05T19:15:09"
  subject="Re: [Caml-list] Memory leak with native code.">
</msg>
<msg 
  url="2002/12/c09fe24875cadf527935c7650ed7fbf5"
  from="Basile STARYNKEVITCH &lt;basile@s...&gt;"
  author="Basile STARYNKEVITCH"
  date="2002-12-05T20:31:17"
  subject="[Caml-list] Memory leak with native code.">
<msg 
  url="2002/12/ea393996881423e7f2f191c1b3c28cb9"
  from="Xavier Leroy &lt;xavier.leroy@i...&gt;"
  author="Xavier Leroy"
  date="2002-12-07T10:43:11"
  subject="Re: [Caml-list] Memory leak with native code.">
<msg 
  url="2002/12/61b3d4635d276f800632e142c7948ee0"
  from="David Brown &lt;caml-list@d...&gt;"
  author="David Brown"
  date="2002-12-07T21:52:49"
  subject="Re: [Caml-list] Memory leak with native code.">
</msg>
</msg>
</msg>
</msg>
</thread>

<contents>
On Thu, 05 Dec 2002, David Brown wrote:
&gt; I guess what would be helpful would be any pointers on what might be
&gt; different between bytecode and native.  I do use callbacks, but the
&gt; main program is in Ocaml.

Have you made sure that stubs taking more than five arguments need to
be split up into two functions? E.g.:

C-file:

  CAMLprim value add_nat_native(value nat1, value ofs1, value len1,
                                value nat2, value ofs2, value len2,
                                value carry_in)
  {
    ...
  }

  CAMLprim value add_nat_bytecode(value * argv, int argn)
  {
    return add_nat_native(argv[0], argv[1], argv[2], argv[3],
                          argv[4], argv[5], argv[6]);
  }

OCaml-file:

  external add_nat: nat -&gt; int -&gt; int -&gt; nat -&gt; int -&gt; int -&gt; int -&gt; int
                  = "add_nat_bytecode" "add_nat_native"

Notice that the external function needs to be declared such on the
OCaml-side that you name both entry points (for byte- and native code).

That's the only difference that comes to my mind...

Regards,
Markus Mottl

-- 
Markus Mottl                                             markus@oefai.at
Austrian Research Institute
for Artificial Intelligence                  http://www.oefai.at/~markus
-------------------
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

</contents>

</message>

