Module Fang_flow.Node
Nodes in flow graphs.
A block
is consists of:
type first
=[
|
`Entry of label
The entry-point of a frame with the designated label.
|
`Label of label
The definition of a label.
]
type middle
=[
|
`Asm of asm
]
A non-branching assembly instruction.
type last
=[
|
`Exit
The end of the frame.
|
`Cbranch of (label -> asm) * label * (label -> asm) * label
A conditional branch. See
Graph.cbranch
.|
`Branch of (label -> asm) * label
An unconditional branch. See
Graph.branch
.]
type t
=[
|
`First of first
|
`Middle of middle
|
`Last of last
]
A generic node, in an arbitrary position.