public class IntrinsicContext extends Object
| Modifier and Type | Class and Description |
|---|---|
static class |
IntrinsicContext.CompilationContext
Denotes the compilation context in which an intrinsic is being parsed.
|
static interface |
IntrinsicContext.SideEffectsState
Models the state of a graph in terms of
side effects that
are control flow predecessors of the current point in a graph. |
| Constructor and Description |
|---|
IntrinsicContext(ResolvedJavaMethod method,
ResolvedJavaMethod intrinsic,
BytecodeProvider bytecodeProvider,
IntrinsicContext.CompilationContext compilationContext) |
IntrinsicContext(ResolvedJavaMethod method,
ResolvedJavaMethod intrinsic,
BytecodeProvider bytecodeProvider,
IntrinsicContext.CompilationContext compilationContext,
boolean allowPartialIntrinsicArgumentMismatch) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
allowPartialIntrinsicArgumentMismatch()
A partial intrinsic exits by (effectively) calling the intrinsified method.
|
FrameState |
createFrameState(StructuredGraph graph,
IntrinsicContext.SideEffectsState sideEffects,
StateSplit forStateSplit,
NodeSourcePosition sourcePosition) |
BytecodeProvider |
getBytecodeProvider()
Gets provider of bytecode to be parsed for a method that is part of an intrinsic.
|
ResolvedJavaMethod |
getIntrinsicMethod()
Gets the method providing the intrinsic implementation.
|
NodeSourcePosition |
getNodeSourcePosition() |
ResolvedJavaMethod |
getOriginalMethod()
Gets the method being intrinsified.
|
boolean |
isCallToOriginal(ResolvedJavaMethod targetMethod)
Determines if a call within the compilation scope of this intrinsic represents a call to the
original method.
|
boolean |
isDeferredInvoke(StateSplit stateSplit) |
boolean |
isPostParseInlined() |
void |
setNodeSourcePosition(NodeSourcePosition position) |
String |
toString() |
public IntrinsicContext(ResolvedJavaMethod method,
ResolvedJavaMethod intrinsic,
BytecodeProvider bytecodeProvider,
IntrinsicContext.CompilationContext compilationContext)
public IntrinsicContext(ResolvedJavaMethod method,
ResolvedJavaMethod intrinsic,
BytecodeProvider bytecodeProvider,
IntrinsicContext.CompilationContext compilationContext,
boolean allowPartialIntrinsicArgumentMismatch)
public boolean allowPartialIntrinsicArgumentMismatch()
public ResolvedJavaMethod getOriginalMethod()
public ResolvedJavaMethod getIntrinsicMethod()
public BytecodeProvider getBytecodeProvider()
public boolean isCallToOriginal(ResolvedJavaMethod targetMethod)
public boolean isPostParseInlined()
public NodeSourcePosition getNodeSourcePosition()
public void setNodeSourcePosition(NodeSourcePosition position)
public boolean isDeferredInvoke(StateSplit stateSplit)
public FrameState createFrameState(StructuredGraph graph, IntrinsicContext.SideEffectsState sideEffects, StateSplit forStateSplit, NodeSourcePosition sourcePosition)