* Removes empty blocks doing if simplifications and loop simplifications.
* A block is empty if it contains only a Jmp node and Phi nodes.
* Merges single entry single exit blocks with their predecessor
* Removes empty blocks doing if simplifications and loop simplifications.
* A block is empty if it contains only a Jmp node and Phi nodes.
* Merges single entry single exit blocks with their predecessor