go/src/cmd/compile/internal/walk/walk.go

const tmpstringbufsize

func Walk(fn *ir.Func) {}

// walkRecv walks an ORECV node.
func walkRecv(n *ir.UnaryExpr) ir.Node {}

func convas(n *ir.AssignStmt, init *ir.Nodes) *ir.AssignStmt {}

func vmkcall(fn ir.Node, t *types.Type, init *ir.Nodes, va []ir.Node) *ir.CallExpr {}

func mkcall(name string, t *types.Type, init *ir.Nodes, args ...ir.Node) *ir.CallExpr {}

func mkcallstmt(name string, args ...ir.Node) ir.Node {}

func mkcall1(fn ir.Node, t *types.Type, init *ir.Nodes, args ...ir.Node) *ir.CallExpr {}

func mkcallstmt1(fn ir.Node, args ...ir.Node) ir.Node {}

func chanfn(name string, n int, t *types.Type) ir.Node {}

func mapfn(name string, t *types.Type, isfat bool) ir.Node {}

func mapfndel(name string, t *types.Type) ir.Node {}

const mapslow

const mapfast32

const mapfast32ptr

const mapfast64

const mapfast64ptr

const mapfaststr

const nmapfast

type mapnames

func mkmapnames(base string, ptr string) mapnames {}

var mapaccess1

var mapaccess2

var mapassign

var mapdelete

func mapfast(t *types.Type) int {}

func mapfastSwiss(t *types.Type) int {}

func mapfastOld(t *types.Type) int {}

func walkAppendArgs(n *ir.CallExpr, init *ir.Nodes) {}

// appendWalkStmt typechecks and walks stmt and then appends it to init.
func appendWalkStmt(init *ir.Nodes, stmt ir.Node) {}

const maxOpenDefers

// backingArrayPtrLen extracts the pointer and length from a slice or string.
// This constructs two nodes referring to n, so n must be a cheapExpr.
func backingArrayPtrLen(n ir.Node) (ptr, length ir.Node) {}

// mayCall reports whether evaluating expression n may require
// function calls, which could clobber function call arguments/results
// currently on the stack.
func mayCall(n ir.Node) bool {}

// itabType loads the _type field from a runtime.itab struct.
func itabType(itab ir.Node) ir.Node {}

var itabTypeField

// boundedDotPtr returns a selector expression representing ptr.field
// and omits nil-pointer checks for ptr.
func boundedDotPtr(pos src.XPos, ptr ir.Node, field *types.Field) *ir.SelectorExpr {}

func runtimeField(name string, offset int64, typ *types.Type) *types.Field {}

// ifaceData loads the data field from an interface.
// The concrete type must be known to have type t.
// It follows the pointer if !IsDirectIface(t).
func ifaceData(pos src.XPos, n ir.Node, t *types.Type) ir.Node {}