Search in sources :

Example 6 with InlineInfo

use of org.graalvm.compiler.phases.common.inlining.info.InlineInfo in project graal by oracle.

the class InliningData method pushInvocationAndGraphs.

private void pushInvocationAndGraphs(MethodInvocation methodInvocation) {
    invocationQueue.addFirst(methodInvocation);
    InlineInfo info = methodInvocation.callee();
    maxGraphs += info.numberOfMethods();
    assert graphQueue.size() <= maxGraphs;
    for (int i = 0; i < info.numberOfMethods(); i++) {
        CallsiteHolder ch = methodInvocation.buildCallsiteHolderForElement(i);
        assert !contains(ch.graph());
        graphQueue.push(ch);
        assert graphQueue.size() <= maxGraphs;
    }
}
Also used : TypeGuardInlineInfo(org.graalvm.compiler.phases.common.inlining.info.TypeGuardInlineInfo) AssumptionInlineInfo(org.graalvm.compiler.phases.common.inlining.info.AssumptionInlineInfo) InlineInfo(org.graalvm.compiler.phases.common.inlining.info.InlineInfo) ExactInlineInfo(org.graalvm.compiler.phases.common.inlining.info.ExactInlineInfo) MultiTypeGuardInlineInfo(org.graalvm.compiler.phases.common.inlining.info.MultiTypeGuardInlineInfo)

Aggregations

InlineInfo (org.graalvm.compiler.phases.common.inlining.info.InlineInfo)6 AssumptionInlineInfo (org.graalvm.compiler.phases.common.inlining.info.AssumptionInlineInfo)4 ExactInlineInfo (org.graalvm.compiler.phases.common.inlining.info.ExactInlineInfo)4 MultiTypeGuardInlineInfo (org.graalvm.compiler.phases.common.inlining.info.MultiTypeGuardInlineInfo)4 TypeGuardInlineInfo (org.graalvm.compiler.phases.common.inlining.info.TypeGuardInlineInfo)4 Invoke (org.graalvm.compiler.nodes.Invoke)2 OptionValues (org.graalvm.compiler.options.OptionValues)2 Providers (org.graalvm.compiler.phases.util.Providers)2 BailoutException (jdk.vm.ci.code.BailoutException)1 HotSpotResolvedObjectType (jdk.vm.ci.hotspot.HotSpotResolvedObjectType)1 DebugContext (org.graalvm.compiler.debug.DebugContext)1 GraalError (org.graalvm.compiler.debug.GraalError)1 Graph (org.graalvm.compiler.graph.Graph)1 Node (org.graalvm.compiler.graph.Node)1 CallTargetNode (org.graalvm.compiler.nodes.CallTargetNode)1 ParameterNode (org.graalvm.compiler.nodes.ParameterNode)1 StructuredGraph (org.graalvm.compiler.nodes.StructuredGraph)1 ValueNode (org.graalvm.compiler.nodes.ValueNode)1 AbstractNewObjectNode (org.graalvm.compiler.nodes.java.AbstractNewObjectNode)1 MethodCallTargetNode (org.graalvm.compiler.nodes.java.MethodCallTargetNode)1