module DDC.Llvm.Syntax ( -- * Modules Module (..) , lookupCallConv -- * Global variables , Global (..) , typeOfGlobal , varOfGlobal -- * Static data , Static (..) , typeOfStatic -- * Function declarations , FunctionDecl (..) , ParamListType (..) , Param (..) , Align (..) -- * Functions , Function (..) , Section (..) -- * Blocks , Block (..) , defVarsOfBlock -- * Block labels , Label (..) -- * Annotated Instructions , AnnotInstr (..) , annotNil , annotWith -- * Instructions , Instr (..) , branchTargetsOfInstr , defVarOfInstr -- * Metadata , Metadata (..) , MDecl (..) , MRef (..) , rval , tbaaNode -- * Expression types , Type (..) , TypeAlias (..) , isInt , isFloat , isPointer , takeBytesOfType -- * Expressions , Exp (..) , typeOfExp , isXVar, isXLit, isXUndef , isClosedConstantExp -- * Variables , Var (..) , nameOfVar , typeOfVar -- * Names , Name (..) -- * Literals , Lit (..) , typeOfLit , makeLitString -- * Primitive operators , Op (..) , Cond (..) , ICond (..) , FCond (..) , Conv (..) -- * Attributes , FuncAttr (..) , ParamAttr (..) , CallConv (..) , CallType (..) , Linkage (..)) where import DDC.Llvm.Syntax.Attr import DDC.Llvm.Syntax.Exp import DDC.Llvm.Syntax.Function import DDC.Llvm.Syntax.Instr import DDC.Llvm.Syntax.Metadata import DDC.Llvm.Syntax.Module import DDC.Llvm.Syntax.Prim import DDC.Llvm.Syntax.Type