Versions in this module Expand all Collapse all v0 v0.4.1 Aug 2, 2022 Changes in this version + func AllFunctions(prog *ir.Program) map[*ir.Function]bool + func AllPackages(initial []*packages.Package, mode ir.BuilderMode, opts *Options) (*ir.Program, []*ir.Package) + func BuildPackage(tc *types.Config, fset *token.FileSet, pkg *types.Package, files []*ast.File, ...) (*ir.Package, *types.Info, error) + func CallName(call *ir.CallCommon) string + func CreateProgram(lprog *loader.Program, mode ir.BuilderMode) *ir.Program + func FilterDebug(instr []ir.Instruction) []ir.Instruction + func Flatten(v ir.Value) ir.Value + func IsCallTo(call *ir.CallCommon, name string) bool + func IsCallToAny(call *ir.CallCommon, names ...string) bool + func IsExample(fn *ir.Function) bool + func IsStub(fn *ir.Function) bool + func MainPackages(pkgs []*ir.Package) []*ir.Package + func Packages(initial []*packages.Package, mode ir.BuilderMode, opts *Options) (*ir.Program, []*ir.Package) + func Reachable(from, to *ir.BasicBlock) bool + func Terminates(fn *ir.Function) bool + func Vararg(x *ir.Slice) ([]ir.Value, bool) + func Walk(b *ir.BasicBlock, fn func(*ir.BasicBlock) bool) + type ConstCase struct + Block *ir.BasicBlock + Body *ir.BasicBlock + Value *ir.Const + type Loop struct + func FindLoops(fn *ir.Function) []Loop + type Options struct + PrintFunc string + type Switch struct + ConstCases []ConstCase + Default *ir.BasicBlock + Start *ir.BasicBlock + TypeCases []TypeCase + X ir.Value + func Switches(fn *ir.Function) []Switch + func (sw *Switch) String() string + type TypeCase struct + Binding ir.Value + Block *ir.BasicBlock + Body *ir.BasicBlock + Type types.Type