[llvm-dev] Fixing ExecutionEngine.run_function OCaml bindings

Joel Jacobson via llvm-dev llvm-dev at lists.llvm.org
Sat Dec 22 09:32:00 PST 2018

Hi LLVM hackers,

I would be willing to pay for the open source development
of the ability to execute generated LLVM IR code from OCaml.

I only need support to pass ints as arguments to LLVM IR functions,
and to return ints back to the OCaml worlds.

The feature was added in this commit:
commit 2e855e68d861224c9b61e2bc9cecad1536b1534b
Author: Gordon Henriksen <gordonhenriksen at mac.com>
Date: Sun Dec 23 16:59:28 2007 +0000

 C and Ocaml bindings for ExecutionEngine (i.e., the JIT compiler).

+ external run_function: Llvm.llvalue -> GenericValue.t array -> t ->
+ GenericValue.t
+ = "llvm_ee_run_function"

And then broke and was removed in this commit:

commit ced3d172f8d83f50b4c8dec136f8123133bad36f
Author: Peter Zotov <whitequark at whitequark.org>
Date: Fri Oct 31 09:05:36 2014 +0000

 [OCaml] Rework Llvm_executionengine using ctypes.

- external run_function: Llvm.llvalue -> GenericValue.t array -> t ->
- GenericValue.t
- = "llvm_ee_run_function"

Please feel free to contact me via email if you are interested in helping out.

I will try to work on this myself, but I fear it will take me a very long time as I don't much much about LLVM internals.

I hope to hear from someone!

Many thanks.

Kind regards,

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20181222/4bd14280/attachment.html>

More information about the llvm-dev mailing list