/*===-- llvm_ocaml.c - LLVM Ocaml Glue --------------------------*- C++ -*-===*\|* *||* The LLVM Compiler Infrastructure *||* *||* This file is distributed under the University of Illinois Open Source *||* License. See LICENSE.TXT for details. *||* *||*===----------------------------------------------------------------------===*||* *||* This file glues LLVM's ocaml interface to its C interface. These functions *||* are by and large transparent wrappers to the corresponding C functions. *||* *||* Note that these functions intentionally take liberties with the CAMLparamX *||* macros, since most of the parameters are not GC heap objects. *||* *|\*===----------------------------------------------------------------------===*/#include"llvm-c/Core.h"#include"caml/alloc.h"#include"caml/custom.h"#include"caml/memory.h"#include"caml/fail.h"#include"caml/callback.h"#include"llvm/Config/config.h"#include<assert.h>#include<stdlib.h>/* Can't use the recommended caml_named_value mechanism for backwards compatibility reasons. This is largely equivalent. */st