Provides different types of basic blocks.
A basic block that terminates in a condition, splitting the subsequent control flow.
An entry basic block, that is, a basic block whose first node is the entry node of a callable.
An exit basic block, that is, a basic block whose last node is the exit node of a callable.
A basic block with more than one predecessor.