A Haskell library for analyzing LLVM bitcode. To convert
bitcode to the format used by this library, see the
llvm-data-interop package.
This library attempts to provide some basic program analysis
infrastructure and aims to scale to large bitcode files.
There are some useful tools built on top of this library
available in the llvm-tools package.
Changes since 0.2.0:
* LLVM 3.3 support (contributed by Patrick Hulin)
* Metadata format change. Metadata type entries no longer have
a MetaDWFile. Instead, file and directory names are stored
directly in each MetaDW*Type. This change lets us more easily
accommodate changes in LLVM 3.3 (while supporting older versions).
* Under LLVM 3.3, the metaCompileUnitIsMain
field of MetaDWCompileUnit
is always False. This disappeared in LLVM 3.3, but removing it would
be an unnecessary API break, I think.