package llvm

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Intermediate representation analysis.

This interface provides an OCaml API for LLVM IR analyses, the classes in the Analysis library.

val verify_module : Llvm.llmodule -> string option

verify_module m returns None if the module m is valid, and Some reason if it is invalid. reason is a string containing a human-readable validation report. See llvm::verifyModule.

val verify_function : Llvm.llvalue -> bool

verify_function f returns true if the function f is valid, and false if it is invalid. See llvm::verifyFunction.

val assert_valid_module : Llvm.llmodule -> unit

verify_module m returns if the module m is valid, but prints a validation report to stderr and aborts the program if it is invalid. See llvm::verifyModule.

val assert_valid_function : Llvm.llvalue -> unit

verify_function f returns if the function f is valid, but prints a validation report to stderr and aborts the program if it is invalid. See llvm::verifyFunction.

val view_function_cfg : Llvm.llvalue -> unit

view_function_cfg f opens up a ghostscript window displaying the CFG of the current function with the code for each basic block inside. See llvm::Function::viewCFG.

val view_function_cfg_only : Llvm.llvalue -> unit

view_function_cfg_only f works just like view_function_cfg, but does not include the contents of basic blocks into the nodes. See llvm::Function::viewCFGOnly.

OCaml

Innovation. Community. Security.