summaryrefslogtreecommitdiff
path: root/bindings/ocaml/linker/llvm_linker.ml
diff options
context:
space:
mode:
authorPeter Zotov <whitequark@whitequark.org>2013-11-03 08:27:32 +0000
committerPeter Zotov <whitequark@whitequark.org>2013-11-03 08:27:32 +0000
commit9d33bf70c228a5c3b57b1d9bf86ea5949bb77293 (patch)
tree278997c0f0f345f1676962b7687ea53a7b88fc05 /bindings/ocaml/linker/llvm_linker.ml
parent1185582dfd542883194d262c5bf92b16e1e037c2 (diff)
downloadllvm-9d33bf70c228a5c3b57b1d9bf86ea5949bb77293.tar.gz
llvm-9d33bf70c228a5c3b57b1d9bf86ea5949bb77293.tar.bz2
llvm-9d33bf70c228a5c3b57b1d9bf86ea5949bb77293.tar.xz
[OCaml] Implement Llvm_linker, bindings for the IR linker
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193951 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'bindings/ocaml/linker/llvm_linker.ml')
-rw-r--r--bindings/ocaml/linker/llvm_linker.ml22
1 files changed, 22 insertions, 0 deletions
diff --git a/bindings/ocaml/linker/llvm_linker.ml b/bindings/ocaml/linker/llvm_linker.ml
new file mode 100644
index 0000000000..2b73e2e9c4
--- /dev/null
+++ b/bindings/ocaml/linker/llvm_linker.ml
@@ -0,0 +1,22 @@
+(*===-- llvm_linker.ml - LLVM OCaml Interface ------------------*- OCaml -*-===*
+ *
+ * The LLVM Compiler Infrastructure
+ *
+ * This file is distributed under the University of Illinois Open Source
+ * License. See LICENSE.TXT for details.
+ *
+ *===----------------------------------------------------------------------===*)
+
+exception Error of string
+
+external register_exns : exn -> unit = "llvm_register_linker_exns"
+let _ = register_exns (Error "")
+
+module Mode = struct
+ type t =
+ | DestroySource
+ | PreserveSource
+end
+
+external link_modules : Llvm.llmodule -> Llvm.llmodule -> Mode.t -> unit
+ = "llvm_link_modules" \ No newline at end of file