package inline

import "cmd/compile/internal/inline"

Index

Variables

var SSADumpInline = func(*ir.Func) {}

SSADumpInline gives the SSA back end a chance to dump the function when producing output for debugging the compiler itself.

Functions

func CanInline

func CanInline(fn *ir.Func)

CanInline determines whether fn is inlineable. If so, CanInline saves copies of fn.Body and fn.Dcl in fn.Inl. fn and fn.Body will already have been typechecked.

func InlineCalls

func InlineCalls(fn *ir.Func)

InlineCalls/inlnode walks fn's statements and expressions and substitutes any calls made to inlineable functions. This is the external entry point.

func InlinePackage

func InlinePackage()

InlinePackage finds functions that can be inlined and clones them before walk expands them.

func Inline_Flood

func Inline_Flood(n *ir.Name, exportsym func(*ir.Name))

Inline_Flood marks n's inline body for export and recursively ensures all called functions are marked too.

Source Files

inl.go

Version
v1.17.9
Published
Apr 12, 2022
Platform
linux/amd64
Imports
10 packages
Last checked
14 minutes ago

Tools for package owners.