nodes
to this graph.usages of a node
are yet
available.Graph
class.Node.ValueNumberable
leaf
nodes.Canonicalizable.canonical(CanonicalizerTool)
, except that
implementations should act as if the current input of the node was the given one, i.e.,
they should never look at the inputs via the this pointer.Canonicalizable.canonical(CanonicalizerTool)
, except that
implementations should act as if the current input of the node was the given one, i.e.,
they should never look at the inputs via the this pointer.Canonicalizable
or one of the two sub-interfaces Canonicalizable.Unary
and
Canonicalizable.Binary
to provide local optimizations like constant folding and strength reduction.Canonicalizable
is intended for nodes that have exactly two
inputs.Canonicalizable.Binary
is for nodes with two inputs where the
operation is commutative.Canonicalizable
is intended for nodes that have exactly one
input.GraalRuntime
's
CollectionsProvider
and NodeCollectionsProvider
.Graph.nodes
fall below this number, a call to
Graph.maybeCompress()
will actually do compression.fromNode
to toNode
.NodeCollectionsProvider
that creates standard JDK collection
class objects.Node
fields representing the set of inputs for the node or the set of the
node's successors.Map
of properties of this node for use in debugging (e.g., to view in the
ideal graph visualizer).Map
with properties of this node for use in debugging (e.g., to view in the
ideal graph visualizer).Graph.getNewNodes(com.oracle.graal.graph.Graph.Mark)
.Verbosity.Name
version.Iterable
providing all the live nodes.Iterable
providing all the live nodes whose type is compatible with
type
.NodeList
if Position.getIndex()
denotes a NodeList
field otherwise Node.NOT_ITERABLE
.Canonicalizable.Unary.canonical(CanonicalizerTool, Node)
with the value returned from this method
should behave exactly like Canonicalizable.canonical(CanonicalizerTool)
.Canonicalizable.Binary.canonical(CanonicalizerTool, Node, Node)
with the value returned from this
method should behave exactly like Canonicalizable.canonical(CanonicalizerTool)
.Canonicalizable.Binary.canonical(CanonicalizerTool, Node, Node)
with the value returned from this
method should behave exactly like Canonicalizable.canonical(CanonicalizerTool)
.GraalGraphJVMCIError
with a message assembled via
String.format(String, Object...)
.GraalGraphJVMCIError
for a given causing Throwable
instance.GraalGraphJVMCIError
from a given JVMCIError instance.Graph.cachedLeafNodes
.Graph.NodeEventListener
.Graph.NodeEventListener
with the enclosing graph until this object is
closed.iterable
which can be used to traverse all non-null
input edges of this node.Canonicalizable
.Canonicalizable
.Canonicalizable.BinaryCommutative
.Canonicalizable.BinaryCommutative
.Simplifiable
.Simplifiable
.Node
s that uses reference-equality in place of
object-equality when comparing keys.Node
s that uses reference-equality in place of
object-equality when comparing keys.Node
s that uses reference-equality in place of
object-equality when comparing keys.Node
s that uses reference-equality in place of object-equality when
comparing entries.Node
type.positions
during
iteration using NodePosIterator.nextPosition()
.CollectionsProvider
with support for creating Node
based collections.NodeClass
.Graph.nodes
.Nodes
.Graph
.NodeClass
.Graph.getNodes(NodeClass)
.key
and if found, replaces it
with replacement
.Canonicalizable
, which supports only replacing the current node.Simplifiable
.iterable
which can be used to traverse all non-null
successor edges of this node.Node.toString(Verbosity)
with Verbosity.Short
.Verbosity
.Graph.NodeEventListener
with this graph.node
and returns it if found.oldInput
to newInput
by removing this node from oldInput
's usages and
adds this node to newInput
's usages.data
fields are equal to the data
fields of another node of the same type.VerificationError
with a message assembled via
String.format(String, Object...)
.