Represent a label in the current method code. In order
to support forward jumps, labels can be created without
having a deisgnated target block. They can later be attached
by calling anchor.
Add an instruction that refers to this label.
Fix this label to the given basic block.
Return the patched instruction.
Return the patched instruction. If the given instruction
jumps to this label, replace it with the basic block. Otherwise,
return the same instruction. Conditional jumps have more than one
label, so they are replaced only if all labels are anchored.
Patch the code by replacing pseudo call instructions with
jumps to the given basic block.