From 2a8cd89d0353349e92d38cdd6b604d8bbba0b6a4 Mon Sep 17 00:00:00 2001 From: Gordon Henriksen Date: Sun, 23 Dec 2007 16:59:28 +0000 Subject: C and Ocaml bindings for ExecutionEngine (i.e., the JIT compiler). llvm-svn: 45335 --- llvm/bindings/ocaml/bitreader/bitreader_ocaml.c | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'llvm/bindings/ocaml/bitreader/bitreader_ocaml.c') diff --git a/llvm/bindings/ocaml/bitreader/bitreader_ocaml.c b/llvm/bindings/ocaml/bitreader/bitreader_ocaml.c index 87477f6312d..980ed2abbfc 100644 --- a/llvm/bindings/ocaml/bitreader/bitreader_ocaml.c +++ b/llvm/bindings/ocaml/bitreader/bitreader_ocaml.c @@ -14,9 +14,8 @@ #include "llvm-c/BitReader.h" #include "caml/alloc.h" -#include "caml/mlvalues.h" +#include "caml/fail.h" #include "caml/memory.h" -#include /* Can't use the recommended caml_named_value mechanism for backwards @@ -29,7 +28,17 @@ CAMLprim value llvm_register_bitreader_exns(value Error) { return Val_unit; } -void llvm_raise(value Prototype, char *Message); +static void llvm_raise(value Prototype, char *Message) { + CAMLparam1(Prototype); + CAMLlocal1(CamlMessage); + + CamlMessage = copy_string(Message); + LLVMDisposeMessage(Message); + + raise_with_arg(Prototype, CamlMessage); + abort(); /* NOTREACHED */ + CAMLnoreturn; +} /*===-- Modules -----------------------------------------------------------===*/ -- cgit v1.2.3