summaryrefslogtreecommitdiffstats
path: root/contrib/llvm/bindings/ocaml/analysis/analysis_ocaml.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/llvm/bindings/ocaml/analysis/analysis_ocaml.c')
-rw-r--r--contrib/llvm/bindings/ocaml/analysis/analysis_ocaml.c72
1 files changed, 0 insertions, 72 deletions
diff --git a/contrib/llvm/bindings/ocaml/analysis/analysis_ocaml.c b/contrib/llvm/bindings/ocaml/analysis/analysis_ocaml.c
deleted file mode 100644
index 9716705..0000000
--- a/contrib/llvm/bindings/ocaml/analysis/analysis_ocaml.c
+++ /dev/null
@@ -1,72 +0,0 @@
-/*===-- analysis_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/Analysis.h"
-#include "caml/alloc.h"
-#include "caml/mlvalues.h"
-#include "caml/memory.h"
-
-
-/* Llvm.llmodule -> string option */
-CAMLprim value llvm_verify_module(LLVMModuleRef M) {
- CAMLparam0();
- CAMLlocal2(String, Option);
-
- char *Message;
- int Result = LLVMVerifyModule(M, LLVMReturnStatusAction, &Message);
-
- if (0 == Result) {
- Option = Val_int(0);
- } else {
- Option = alloc(1, 0);
- String = copy_string(Message);
- Store_field(Option, 0, String);
- }
-
- LLVMDisposeMessage(Message);
-
- CAMLreturn(Option);
-}
-
-/* Llvm.llvalue -> bool */
-CAMLprim value llvm_verify_function(LLVMValueRef Fn) {
- return Val_bool(LLVMVerifyFunction(Fn, LLVMReturnStatusAction) == 0);
-}
-
-/* Llvm.llmodule -> unit */
-CAMLprim value llvm_assert_valid_module(LLVMModuleRef M) {
- LLVMVerifyModule(M, LLVMAbortProcessAction, 0);
- return Val_unit;
-}
-
-/* Llvm.llvalue -> unit */
-CAMLprim value llvm_assert_valid_function(LLVMValueRef Fn) {
- LLVMVerifyFunction(Fn, LLVMAbortProcessAction);
- return Val_unit;
-}
-
-/* Llvm.llvalue -> unit */
-CAMLprim value llvm_view_function_cfg(LLVMValueRef Fn) {
- LLVMViewFunctionCFG(Fn);
- return Val_unit;
-}
-
-/* Llvm.llvalue -> unit */
-CAMLprim value llvm_view_function_cfg_only(LLVMValueRef Fn) {
- LLVMViewFunctionCFGOnly(Fn);
- return Val_unit;
-}
OpenPOWER on IntegriCloud