LLVM.Core

Initialize

initializeNativeTarget

Modules

data Module

newModule

newNamedModule

defineModule

destroyModule

createModule

data ModuleProvider

createModuleProviderForExistingModule

data PassManager

createPassManager

createFunctionPassManager

writeBitcodeToFile

readBitcodeFromFile

getModuleValues

getFunctions

getGlobalVariables

data ModuleValue

castModuleValue

Instructions

ADT representation of IR

data BinOpDesc

data InstrDesc

data ArgDesc

getInstrDesc

Terminator instructions

ret

condBr

br

switch

invoke

invokeWithConv

unreachable

Arithmetic binary operations

add

sub

mul

neg

iadd

isub

imul

ineg

fadd

fsub

fmul

fneg

idiv

irem

udiv

sdiv

fdiv

urem

srem

frem

Logical binary operations

shl

lshr

ashr

and

or

xor

inv

Vector operations

extractelement

insertelement

shufflevector

Aggregate operation

extractvalue

insertvalue

Memory access

malloc

arrayMalloc

alloca

arrayAlloca

free

load

store

getElementPtr

getElementPtr0

unsafeGetElementPtr

Conversions

trunc

zext

sext

fptrunc

fpext

fptoui

fptosi

fptoint

uitofp

sitofp

inttofp

ptrtoint

inttoptr

bitcast

bitcastUnify

Comparison

data CmpPredicate

data IntPredicate

data FPPredicate

class CmpRet c d

cmp

pcmp

icmp

fcmp

select

Other

phi

addPhiInputs

call

callWithConv

sizeOf

alignOf

Classes and types

type Terminate

class Ret a r

class CallArgs f g r

class ABinOp a b c

class CmpOp a b c d

class FunctionArgs f g r

class FunctionRet a

class IsConst a

class AllocArg a

class GetElementPtr optr ixs nptr

class IsIndexArg a

class GetValue agg ix el

Types classification

Type classifier

class IsType a

StructFields classifier

class StructFields as

Special type classifiers

class Nat n

class Pos n

class IsArithmetic a

data ArithmeticType a

class IsInteger a

class IsIntegerOrPointer a

class IsFloating a

class IsPrimitive a

class IsFirstClass a

class IsSized a s

class IsFunction a

Others

class NumberOfElements n a

type UnknownSize

Structs

type a :& as

(&)

Type tests

data TypeDesc

isFloating

isSigned

typeRef

typeName

typeDesc2

data VarArgs a

class CastVarArgs a b

Extra types

data IntN n

data WordN n

data FP128

data Array n a

data Vector n a

data Ptr a

data Label

data Struct a

data PackedStruct a

Values and constants

data Value a

data ConstValue a

valueOf

value

zero

allOnes

undef

createString

createStringNul

withString

withStringNul

withModule

data Module

constVector

constArray

constStruct

constPackedStruct

toVector

fromVector

vector

Code generation

data CodeGenFunction r a

data CodeGenModule a

Functions

type Function a

newFunction

newNamedFunction

defineFunction

createFunction

createNamedFunction

setFuncCallConv

type TFunction a

liftCodeGenModule

getParams

Global variable creation

type Global a

newGlobal

newNamedGlobal

defineGlobal

createGlobal

createNamedGlobal

externFunction

staticFunction

externGlobal

staticGlobal

data GlobalMappings

getGlobalMappings

type TGlobal a

Globals

data Linkage

Basic blocks

data BasicBlock

newBasicBlock

newNamedBasicBlock

defineBasicBlock

createBasicBlock

createNamedBasicBlock

getCurrentBasicBlock

getBasicBlocks

fromLabel

toLabel

getInstructions

getOperands

hasUsers

getUsers

getUses

getUser

isChildOf

getDep

Misc

addAttributes

data Attribute

castVarArgs

Debugging

dumpValue

dumpType

annotateValueList

getValueName

setValueName

setValueName_