SignedDivisionNode

Two's complement division operation for signed operands, rounds towards zero.

The divisor must not be zero, otherwise the result is a poison value. Furthermore, dividing the "most negative" value representable (in N bits, -1 \times 2^{N-1}) by -1 also results in poison.

Members

Functions

opEquals
bool opEquals(const(SignedDivisionNode) other)

Equivalence <=> structural equality.

opIndex
inout(InEdge)* opIndex(InEdge.ID slot)

See Node.opIndex.

toHash
hash_t toHash()

Semantic hash.

Properties

inEdges
InEdgeIterator!Callable inEdges [@property getter]

Provides an iterator over this node's in-edges.

outEdges
OutEdgeIterator!Callable outEdges [@property getter]

Provides an iterator over this node's out-edges.

Static functions

dispose
void dispose(SignedDivisionNode* self)

Frees all resources allocated by this node and sets it to an uninitialized state.

initialize
err_t initialize(SignedDivisionNode* self)

Initializes a division node.

Variables

dividend
OutEdge dividend;

Dividend operand.

divisor
OutEdge divisor;

Divisor operand.

quotient
InEdge quotient;

Resulting quotient.

Mixed In Members

From mixin NodeInheritance

opPostMove
void opPostMove(const(This) old)

Post-move adjusts in-edge slots' owner pointer.

See Also