llvm-general-3.2.6.0: General purpose LLVM bindings

Safe HaskellSafe-Inferred

LLVM.General.AST

Description

This module and descendants define AST data types to represent LLVM code. Note that these types are designed for fidelity rather than convenience - if the truth of what LLVM supports is less than pretty, so be it.

Synopsis

Documentation

data Module

Constructors

Module 

Fields

moduleName :: String
 
moduleDataLayout :: Maybe DataLayout

a DataLayout, if specified, must match that of the eventual code generator

moduleTargetTriple :: Maybe String
 
moduleDefinitions :: [Definition]
 

defaultModule :: Module

helper for making Modules

globalAliasDefaults :: Global

helper for making GlobalAliass

functionDefaults :: Global

helper for making Functions

data BasicBlock

http://llvm.org/doxygen/classllvm_1_1BasicBlock.html LLVM code in a function is a sequence of BasicBlocks each with a label, some instructions, and a terminator.