Text.LLVM

LLVM Monad

data LLVM a

runLLVM

emitTypeDecl

emitGlobal

emitDeclare

emitDefine

Alias Introduction

alias

Function Definition

freshSymbol

data a :> b

define

defineFresh

class DefineArgs a k

define'

declare

global

Types

iT

ptrT

voidT

arrayT

(=:)

(-:)

Values

class IsValue a

int

integer

struct

array

string

Basic Blocks

data BB a

freshLabel

label

comment

assign

Terminator Instructions

ret

retVoid

jump

br

unreachable

unwind

Binary Operations

add

fadd

sub

fsub

mul

fmul

udiv

sdiv

fdiv

urem

srem

frem

Bitwise Binary Operations

shl

lshr

ashr

band

bor

bxor

Conversion Operations

trunc

zext

sext

fptrunc

fpext

fptoui

fptosi

uitofp

sitofp

ptrtoint

inttoptr

bitcast

Aggregate Operations

extractValue

insertValue

Memory Access and Addressing Operations

alloca

load

store

getelementptr

nullPtr

Other Operations

icmp

fcmp

phi

data PhiArg

from

select

call

call_

invoke

switch

shuffleVector

Re-exported