1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-01 16:33:37 +01:00
llvm-mirror/bindings/ocaml/bitreader/llvm_bitreader.mli
Gordon Henriksen aff6e2bba2 Adding Ocaml bindings for the bitreader as requested by Sarah
Thompson. Usage should be something like this:

open Llvm
open Llvm_bitreader

match read_bitcode_file fn with
  | Bitreader_failure msg ->
      prerr_endline msg
  | Bitreader_success m -> 
      ...;
      dispose_module m

Compile with: ocamlc llvm.cma llvm_bitreader.cma
              ocamlopt llvm.cmxa llvm_bitreader.cmxa

llvm-svn: 44824
2007-12-11 00:20:48 +00:00

26 lines
1010 B
OCaml

(*===-- llvm_bitreader.mli - LLVM Ocaml Interface ---------------*- C++ -*-===*
*
* The LLVM Compiler Infrastructure
*
* This file was developed by Gordon Henriksen and is distributed under the
* University of Illinois Open Source License. See LICENSE.TXT for details.
*
*===----------------------------------------------------------------------===
*
* This interface provides an ocaml API for the LLVM bitcode reader, the
* classes in the Bitreader library.
*
*===----------------------------------------------------------------------===*)
type bitreader_result =
| Bitreader_success of Llvm.llmodule
| Bitreader_failure of string
(** [read_bitcode_file path] reads the bitcode for module [m] from the file at
[path]. Returns [Reader_success m] if successful, and [Reader_failure msg]
otherwise, where [msg] is a description of the error encountered. **)
external read_bitcode_file : string -> bitreader_result
= "llvm_read_bitcode_file"