public final class IdentityHashCodeNode extends PureFunctionMacroNode
Node.ConstantNodeParameter, Node.InjectedNodeParameter, Node.Input, Node.NodeIntrinsic, Node.OptionalInput, Node.Successor, Node.ValueNumberable
Canonicalizable.Binary<T extends Node>, Canonicalizable.BinaryCommutative<T extends Node>, Canonicalizable.Unary<T extends Node>
MemoryCheckpoint.Multi, MemoryCheckpoint.Single, MemoryCheckpoint.TypeAssertion
Modifier and Type | Field and Description |
---|---|
static NodeClass<IdentityHashCodeNode> |
TYPE |
stateAfter
arguments, bci, invokeKind, returnType, targetMethod
next
NODE_LIST, NOT_ITERABLE, USE_UNSAFE_TO_CLONE, WithAllEdges, WithNoEdges, WithOnlyInputEdges, WithOnlySucessorEdges
Constructor and Description |
---|
IdentityHashCodeNode(CallTargetNode.InvokeKind invokeKind,
ResolvedJavaMethod targetMethod,
int bci,
JavaType returnType,
ValueNode object) |
Modifier and Type | Method and Description |
---|---|
protected JavaConstant |
evaluate(JavaConstant param,
MetaAccessProvider metaAccess)
This method should return either a constant that represents the result of the function, or
null if no such result could be determined.
|
canonical
getLocationIdentity, hasSideEffect, replaceSnippetInvokes, setStateAfter, stateAfter
createInvoke, getBci, getLoweredSnippetGraph, getLoweredSubstitutionGraph, getReturnType, getTargetMethod, lower, lowerReplacement, replaceWithInvoke
asNode, next, setNext
asConstant, asJavaConstant, getKind, graph, inferStamp, isAllowedUsageType, isConstant, isConstantPredicate, isNullConstant, setStamp, stamp, updateStamp
acceptInputs, acceptSuccessors, afterClone, assertFalse, assertTrue, cfgPredecessors, cfgSuccessors, clearInputs, clearSuccessors, copyWithInputs, copyWithInputs, equals, fail, formatTo, getDebugProperties, getDebugProperties, getId, getNodeClass, getUsageAt, getUsageCount, hashCode, hasNoUsages, hasUsages, inputs, isAlive, isDeleted, markDeleted, modCount, newIdentityMap, newIdentityMap, newIdentityMap, newMap, newMap, newMap, newSet, newSet, predecessor, pushInputs, removeUsage, replaceAndDelete, replaceAtMatchingUsages, replaceAtPredecessor, replaceAtUsages, replaceAtUsages, replaceAtUsages, replaceFirstInput, replaceFirstSuccessor, safeDelete, simplify, successors, toString, toString, updatePredecessor, updateUsages, updateUsagesInterface, usages, valueEquals, verifyEdges, verifyInputs
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
asNode
states
public static final NodeClass<IdentityHashCodeNode> TYPE
public IdentityHashCodeNode(CallTargetNode.InvokeKind invokeKind, ResolvedJavaMethod targetMethod, int bci, JavaType returnType, ValueNode object)
protected JavaConstant evaluate(JavaConstant param, MetaAccessProvider metaAccess)
PureFunctionMacroNode
evaluate
in class PureFunctionMacroNode