module Llvm_analysis:sig..end
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 optionverify_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 -> boolverify_function f returns None if the function f is valid, and
Some reason if it is invalid. reason is a string containing a
human-readable validation report. See llvm::verifyFunction.
val assert_valid_module : Llvm.llmodule -> unitverify_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 -> unitverify_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 -> unitview_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 -> unitview_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.