Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewFunctionDecl ¶
NewFunctionDecl returns a new function declaration based on the given metadata attachment, linkage and function header.
func NewFunctionDef ¶
NewFunctionDef returns a new function definition based on the given linkage, function header, metadata attachment and function body.
Types ¶
type FunctionBody ¶
type FunctionBody struct { Blocks []*ir.BasicBlock UseListOrders []*ir.UseListOrder }
FunctionBody is the body of an LLVM IR function.
type FunctionHeader ¶
type FunctionHeader struct { Preemption ir.Preemption // zero value if not present Visibility ir.Visibility // zero value if not present DLLStorageClass ir.DLLStorageClass // zero value if not present CallingConv ir.CallingConv // zero value if not present ReturnAttrs []ir.ReturnAttribute RetType types.Type Name string // *GlobalIdent Params []*ir.Param Variadic bool UnnamedAddr ir.UnnamedAddr FuncAttrs []ir.FuncAttribute Section *ir.Section // nil if not present Comdat *ir.Comdat // nil if not present GC string // empty if not present Prefix ir.Constant // *TypeConst; nil if not present Prologue ir.Constant // *TypeConst; nil if not present Personality ir.Constant // *TypeConst; nil if not present }
FunctionHeader is the header of an LLVM IR function.
type Module ¶
type Module struct { // Module being generated. *ir.Module // contains filtered or unexported fields }
A Module represents an LLVM IR module generator.
type TypeSetter ¶
TypeSetter is used during translation to set types of the underlying values and constants of *ast.TypeValue and *ast.TypeConst, respectively.
Click to show internal directories.
Click to hide internal directories.