Inliner

dotty.tools.backend.jvm.opt.Inliner
class Inliner(ppa: PostProcessorFrontendAccess, backendUtils: BackendUtils, inlineInfoLoader: InlineInfoLoader, callGraph: CallGraph, coreBTypes: CoreBTypes, bTypesFromClassfile: BTypesFromClassfile, byteCodeRepository: BCodeRepository, heuristics: InlinerHeuristics, closureOptimizer: ClosureOptimizer)

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Value members

Concrete methods

def inlineCallsite(callsite: KnownCallsite, aliasFrame: Option[AliasingFrame[Value]] = ..., updateCallGraph: Boolean = ...): Map[AbstractInsnNode, AbstractInsnNode]

Copy and adapt the instructions of a method to a callsite.

Copy and adapt the instructions of a method to a callsite.

Preconditions:

  • The callsite can safely be inlined (canInlineBody is true)
  • The maxLocals and maxStack values of the callsite method are correctly computed

Attributes

Returns

A map associating instruction nodes of the callee with the corresponding cloned instruction in the callsite method.