public abstract static class SharedGraphBuilderPhase.SharedBytecodeParser
extends org.graalvm.compiler.java.BytecodeParser
bytecodeProvider, BytecodesParsed, code, constantPool, currentBlock, debug, entryBCI, EXPLICIT_EXCEPTIONS, frameState, graph, graphBuilderConfig, intrinsicContext, lastInstr, method, optimisticOpts, options, profilingInfo, providers, stream, TRACELEVEL_BLOCKMAP, TRACELEVEL_INSTRUCTIONS, TRACELEVEL_STATE| Modifier | Constructor and Description |
|---|---|
protected |
SharedBytecodeParser(org.graalvm.compiler.java.GraphBuilderPhase.Instance graphBuilderInstance,
org.graalvm.compiler.nodes.StructuredGraph graph,
org.graalvm.compiler.java.BytecodeParser parent,
jdk.vm.ci.meta.ResolvedJavaMethod method,
int entryBCI,
org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext intrinsicContext,
boolean explicitExceptionEdges) |
protected |
SharedBytecodeParser(org.graalvm.compiler.java.GraphBuilderPhase.Instance graphBuilderInstance,
org.graalvm.compiler.nodes.StructuredGraph graph,
org.graalvm.compiler.java.BytecodeParser parent,
jdk.vm.ci.meta.ResolvedJavaMethod method,
int entryBCI,
org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext intrinsicContext,
boolean explicitExceptionEdges,
boolean allowIncompleteClasspath) |
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
canInlinePartialIntrinsicExit() |
org.graalvm.compiler.nodes.java.MethodCallTargetNode |
createMethodCallTarget(org.graalvm.compiler.nodes.CallTargetNode.InvokeKind invokeKind,
jdk.vm.ci.meta.ResolvedJavaMethod targetMethod,
org.graalvm.compiler.nodes.ValueNode[] args,
org.graalvm.compiler.core.common.type.StampPair returnStamp,
jdk.vm.ci.meta.JavaTypeProfile profile) |
protected void |
emitCheckForInvokeSuperSpecial(org.graalvm.compiler.nodes.ValueNode[] args) |
protected void |
genIf(org.graalvm.compiler.nodes.ValueNode x,
org.graalvm.compiler.core.common.calc.Condition cond,
org.graalvm.compiler.nodes.ValueNode y) |
protected void |
genReturn(org.graalvm.compiler.nodes.ValueNode returnVal,
jdk.vm.ci.meta.JavaKind returnKind) |
protected void |
handleUnresolvedCheckCast(jdk.vm.ci.meta.JavaType type,
org.graalvm.compiler.nodes.ValueNode object) |
protected void |
handleUnresolvedExceptionType(jdk.vm.ci.meta.JavaType type) |
protected void |
handleUnresolvedInstanceOf(jdk.vm.ci.meta.JavaType type,
org.graalvm.compiler.nodes.ValueNode object) |
protected void |
handleUnresolvedInvoke(jdk.vm.ci.meta.JavaMethod javaMethod,
org.graalvm.compiler.nodes.CallTargetNode.InvokeKind invokeKind) |
protected void |
handleUnresolvedLoadConstant(jdk.vm.ci.meta.JavaType type) |
protected void |
handleUnresolvedLoadField(jdk.vm.ci.meta.JavaField field,
org.graalvm.compiler.nodes.ValueNode receiver) |
protected void |
handleUnresolvedNewInstance(jdk.vm.ci.meta.JavaType type) |
protected void |
handleUnresolvedNewMultiArray(jdk.vm.ci.meta.JavaType type,
org.graalvm.compiler.nodes.ValueNode[] dims) |
protected void |
handleUnresolvedNewObjectArray(jdk.vm.ci.meta.JavaType type,
org.graalvm.compiler.nodes.ValueNode length) |
protected void |
handleUnresolvedStoreField(jdk.vm.ci.meta.JavaField field,
org.graalvm.compiler.nodes.ValueNode value,
org.graalvm.compiler.nodes.ValueNode receiver) |
boolean |
isPluginEnabled(org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderPlugin plugin) |
protected void |
maybeEagerlyResolve(int cpi,
int bytecode) |
protected jdk.vm.ci.meta.JavaType |
maybeEagerlyResolve(jdk.vm.ci.meta.JavaType type,
jdk.vm.ci.meta.ResolvedJavaType accessingClass) |
boolean |
needsExplicitException() |
protected boolean |
needsExplicitNullCheckException(org.graalvm.compiler.nodes.ValueNode object) |
protected boolean |
needsExplicitStoreCheckException(org.graalvm.compiler.nodes.ValueNode array,
org.graalvm.compiler.nodes.ValueNode value) |
void |
notifyReplacedCall(jdk.vm.ci.meta.ResolvedJavaMethod targetMethod,
org.graalvm.compiler.nodes.ConstantNode node) |
protected boolean |
shouldComplementProbability() |
protected RuntimeException |
throwParserError(Throwable e) |
append, appendConstant, appendInvoke, bailout, bci, build, buildRootMethod, checkLastInstruction, cleanupFinalGraph, createAnchor, createBytecodePosition, createHandleExceptionTarget, createInstanceOf, createInstanceOf, createInstanceOfAllowNull, createInvoke, createInvokeWithException, createMonitorEnterNode, createNewArray, createNewInstance, createNewMultiArray, createNonInlinedInvoke, createNonInlinedInvoke, disableLoopSafepoint, finishInstruction, finishPrepare, forceLoopPhis, genAnd, genArrayLength, genCheckCast, genCheckCast, genConditional, genExplicitExceptionEdge, genFloatAdd, genFloatConvert, genFloatDiv, genFloatMul, genFloatRem, genFloatSub, genGetField, genGetField, genGetStatic, genGoto, genIf, genIfNode, genInstanceOf, genInstanceOf, genIntegerAdd, genIntegerDiv, genIntegerEquals, genIntegerLessThan, genIntegerMul, genIntegerNormalizeCompare, genIntegerRem, genIntegerSub, genIntegerSwitch, genInvokeDynamic, genInvokeInterface, genInvokeInterface, genInvokeSpecial, genInvokeStatic, genInvokeVirtual, genInvokeVirtual, genJsr, genLeftShift, genLoadConstant, genLoadField, genLoadIndexed, genMonitorEnter, genMonitorExit, genNarrow, genNegateOp, genNewInstance, genNewInstance, genNewInstance, genNormalizeCompare, genObjectEquals, genOr, genPutField, genPutField, genPutStatic, genPutStatic, genRet, genRightShift, genSignExtend, genStoreField, genStoreIndexed, genThrow, genUnique, genUnique, genUnsignedRightShift, genVolatileFieldReadProxy, genXor, genZeroExtend, getActionForInvokeExceptionEdge, getBeforeUnwindNode, getCode, getConstantFieldProvider, getConstantReflection, getFrameStateBuilder, getGraph, getGraphBuilderInstance, getIntrinsic, getInvokeKind, getInvokeReturnType, getMetaAccess, getMethod, getNonIntrinsicAncestor, getParent, getProfileForInvoke, getProfileProbability, getReplacements, getStampProvider, getStream, getUnwindValue, handleIllegalNewInstance, handleReplacedInvoke, handleReplacedInvoke, intrinsify, intrinsify, isNeverExecutedCode, isPotentialCountedLoopExit, iterateBytecodesForBlock, loadLocal, loadLocalObject, lookupField, lookupField, lookupType, maybeEagerlyInitialize, maybeEmitExplicitBoundsCheck, maybeEmitExplicitDivisionByZeroCheck, maybeEmitExplicitNullCheck, maybeEmitExplicitStoreCheck, needsExplicitBoundsCheckException, needsExplicitClassCastException, needsExplicitDivisionByZeroException, notifyAfterInline, notifyBeforeInline, parseAndInlineCallee, parsingIntrinsic, pop, postProcessIfNode, processBlock, processBytecode, push, setCurrentFrameState, setStateAfter, stampFromValueForForcedPhis, storeLocal, toString, traceInstruction, traceWithContext, tryInvocationPlugin, typeIsResolvedclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitprotected SharedBytecodeParser(org.graalvm.compiler.java.GraphBuilderPhase.Instance graphBuilderInstance,
org.graalvm.compiler.nodes.StructuredGraph graph,
org.graalvm.compiler.java.BytecodeParser parent,
jdk.vm.ci.meta.ResolvedJavaMethod method,
int entryBCI,
org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext intrinsicContext,
boolean explicitExceptionEdges)
protected SharedBytecodeParser(org.graalvm.compiler.java.GraphBuilderPhase.Instance graphBuilderInstance,
org.graalvm.compiler.nodes.StructuredGraph graph,
org.graalvm.compiler.java.BytecodeParser parent,
jdk.vm.ci.meta.ResolvedJavaMethod method,
int entryBCI,
org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext intrinsicContext,
boolean explicitExceptionEdges,
boolean allowIncompleteClasspath)
protected RuntimeException throwParserError(Throwable e)
throwParserError in class org.graalvm.compiler.java.BytecodeParserprotected void maybeEagerlyResolve(int cpi,
int bytecode)
maybeEagerlyResolve in class org.graalvm.compiler.java.BytecodeParserprotected jdk.vm.ci.meta.JavaType maybeEagerlyResolve(jdk.vm.ci.meta.JavaType type,
jdk.vm.ci.meta.ResolvedJavaType accessingClass)
maybeEagerlyResolve in class org.graalvm.compiler.java.BytecodeParserprotected void handleUnresolvedNewInstance(jdk.vm.ci.meta.JavaType type)
handleUnresolvedNewInstance in class org.graalvm.compiler.java.BytecodeParserprotected void handleUnresolvedNewObjectArray(jdk.vm.ci.meta.JavaType type,
org.graalvm.compiler.nodes.ValueNode length)
handleUnresolvedNewObjectArray in class org.graalvm.compiler.java.BytecodeParserprotected void handleUnresolvedNewMultiArray(jdk.vm.ci.meta.JavaType type,
org.graalvm.compiler.nodes.ValueNode[] dims)
handleUnresolvedNewMultiArray in class org.graalvm.compiler.java.BytecodeParserprotected void handleUnresolvedInstanceOf(jdk.vm.ci.meta.JavaType type,
org.graalvm.compiler.nodes.ValueNode object)
handleUnresolvedInstanceOf in class org.graalvm.compiler.java.BytecodeParserprotected void handleUnresolvedCheckCast(jdk.vm.ci.meta.JavaType type,
org.graalvm.compiler.nodes.ValueNode object)
handleUnresolvedCheckCast in class org.graalvm.compiler.java.BytecodeParserprotected void handleUnresolvedLoadConstant(jdk.vm.ci.meta.JavaType type)
handleUnresolvedLoadConstant in class org.graalvm.compiler.java.BytecodeParserprotected void handleUnresolvedExceptionType(jdk.vm.ci.meta.JavaType type)
handleUnresolvedExceptionType in class org.graalvm.compiler.java.BytecodeParserprotected void handleUnresolvedStoreField(jdk.vm.ci.meta.JavaField field,
org.graalvm.compiler.nodes.ValueNode value,
org.graalvm.compiler.nodes.ValueNode receiver)
handleUnresolvedStoreField in class org.graalvm.compiler.java.BytecodeParserprotected void handleUnresolvedLoadField(jdk.vm.ci.meta.JavaField field,
org.graalvm.compiler.nodes.ValueNode receiver)
handleUnresolvedLoadField in class org.graalvm.compiler.java.BytecodeParserprotected void handleUnresolvedInvoke(jdk.vm.ci.meta.JavaMethod javaMethod,
org.graalvm.compiler.nodes.CallTargetNode.InvokeKind invokeKind)
handleUnresolvedInvoke in class org.graalvm.compiler.java.BytecodeParserprotected void emitCheckForInvokeSuperSpecial(org.graalvm.compiler.nodes.ValueNode[] args)
emitCheckForInvokeSuperSpecial in class org.graalvm.compiler.java.BytecodeParserprotected boolean canInlinePartialIntrinsicExit()
canInlinePartialIntrinsicExit in class org.graalvm.compiler.java.BytecodeParserprotected void genIf(org.graalvm.compiler.nodes.ValueNode x,
org.graalvm.compiler.core.common.calc.Condition cond,
org.graalvm.compiler.nodes.ValueNode y)
genIf in class org.graalvm.compiler.java.BytecodeParserprotected boolean shouldComplementProbability()
shouldComplementProbability in class org.graalvm.compiler.java.BytecodeParserpublic org.graalvm.compiler.nodes.java.MethodCallTargetNode createMethodCallTarget(org.graalvm.compiler.nodes.CallTargetNode.InvokeKind invokeKind,
jdk.vm.ci.meta.ResolvedJavaMethod targetMethod,
org.graalvm.compiler.nodes.ValueNode[] args,
org.graalvm.compiler.core.common.type.StampPair returnStamp,
jdk.vm.ci.meta.JavaTypeProfile profile)
createMethodCallTarget in class org.graalvm.compiler.java.BytecodeParserprotected void genReturn(org.graalvm.compiler.nodes.ValueNode returnVal,
jdk.vm.ci.meta.JavaKind returnKind)
genReturn in class org.graalvm.compiler.java.BytecodeParserprotected boolean needsExplicitNullCheckException(org.graalvm.compiler.nodes.ValueNode object)
needsExplicitNullCheckException in class org.graalvm.compiler.java.BytecodeParserprotected boolean needsExplicitStoreCheckException(org.graalvm.compiler.nodes.ValueNode array,
org.graalvm.compiler.nodes.ValueNode value)
needsExplicitStoreCheckException in class org.graalvm.compiler.java.BytecodeParserpublic boolean needsExplicitException()
needsExplicitException in interface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContextneedsExplicitException in class org.graalvm.compiler.java.BytecodeParserpublic void notifyReplacedCall(jdk.vm.ci.meta.ResolvedJavaMethod targetMethod,
org.graalvm.compiler.nodes.ConstantNode node)
public boolean isPluginEnabled(org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderPlugin plugin)