package inline
import "cmd/compile/internal/inline"
Index ¶
- Variables
- func CalleeEffects(init *ir.Nodes, callee ir.Node)
- func CanInline(fn *ir.Func)
- func InlineCalls(fn *ir.Func)
- func InlinePackage()
Variables ¶
var NewInline = func(call *ir.CallExpr, fn *ir.Func, inlIndex int) *ir.InlinedCallExpr { return nil }
NewInline allows the inliner implementation to be overridden. If it returns nil, the legacy inliner will handle this call instead.
SSADumpInline gives the SSA back end a chance to dump the function when producing output for debugging the compiler itself.
Functions ¶
func CalleeEffects ¶
CalleeEffects appends any side effects from evaluating callee to init.
func CanInline ¶
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 ¶
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.
Source Files ¶
- Version
- v1.18.2
- Published
- May 10, 2022
- Platform
- js/wasm
- Imports
- 10 packages
- Last checked
- 1 minute ago –
Tools for package owners.