protected class PEGraphDecoder.PEPluginGraphBuilderContext extends PEGraphDecoder.PENonAppendGraphBuilderContext
GraphBuilderContext.ExternalInliningContext| Modifier and Type | Field and Description |
|---|---|
protected FixedNode |
insertBefore |
protected ValueNode |
pushedNode |
invoke, methodScope| Constructor and Description |
|---|
PEPluginGraphBuilderContext(PEGraphDecoder.PEMethodScope inlineScope,
FixedNode insertBefore) |
| Modifier and Type | Method and Description |
|---|---|
<T extends ValueNode> |
append(T v)
Adds the given node to the graph and also adds recursively all referenced inputs.
|
void |
push(JavaKind kind,
ValueNode value)
Pushes a given value to the frame state stack using an explicit kind.
|
void |
setStateAfter(StateSplit sideEffect)
Creates a snap shot of the current frame state with the BCI of the instruction after the one
currently being parsed and assigns it to a given side
effect node.
|
bailout, bci, canDeferPlugin, getCode, getDepth, getExternalInliningContext, getGraph, getIntrinsic, getInvokeKind, getInvokeReturnType, getMethod, getParent, handleReplacedInvoke, handleReplacedInvoke, isParsingInvocationPlugin, needsExplicitException, recursiveInliningDepth, toStringgetConstantFieldProvider, getConstantReflection, getForeignCalls, getLoopsDataProvider, getLowerer, getMetaAccess, getMetaAccessExtensionProvider, getPlatformConfigurationProvider, getProviders, getReplacements, getStampProvider, getWordVerificationclone, equals, getClass, hashCode, notify, notifyAll, wait, wait, waitadd, addNonNullCast, addPush, allowDeoptInPlugins, bciCanBeDuplicated, canMergeIntrinsicReturns, emitBytecodeExceptionCheck, genCheckcastDynamic, genExplicitExceptionEdge, getInvocationPluginBeforeState, getInvocationPluginReturnState, getInvokeReturnStamp, getNonIntrinsicAncestor, intrinsicRangeCheck, invokeFallback, isPluginEnabled, maskSubWordValue, maybeEmitExplicitDivisionByZeroCheck, maybeEmitExplicitNegativeArraySizeCheck, maybeEmitExplicitNegativeArraySizeCheck, nullCheckedValue, nullCheckedValue, parsingIntrinsic, pop, popArguments, replacePlugin, replacePluginWithExceptiongetAssumptions, getDebug, getOptions, shouldDeferPlugingetConstantFieldProvider, getConstantReflection, getForeignCalls, getLoopsDataProvider, getLowerer, getMetaAccess, getMetaAccessExtensionProvider, getPlatformConfigurationProvider, getReplacements, getStampProvider, getWordVerificationprotected final FixedNode insertBefore
protected ValueNode pushedNode
public PEPluginGraphBuilderContext(PEGraphDecoder.PEMethodScope inlineScope, FixedNode insertBefore)
public void push(JavaKind kind,
ValueNode value)
GraphBuilderContextvalue.getJavaKind() is different from the kind that the bytecode instruction
currently being parsed pushes to the stack.push in interface GraphBuilderContextpush in class PEGraphDecoder.PENonAppendGraphBuilderContextkind - the kind to use when type checking this operationvalue - the value to push to the stack. The value must already have been
appended.public void setStateAfter(StateSplit sideEffect)
GraphBuilderContextsetStateAfter in interface GraphBuilderContextsetStateAfter in class PEGraphDecoder.PENonAppendGraphBuilderContextsideEffect - a side effect node just appended to the graphpublic <T extends ValueNode> T append(T v)
GraphBuilderToolappend in interface GraphBuilderToolappend in class PEGraphDecoder.PENonAppendGraphBuilderContextv - the node to be added to the graph