splitByBasicBlockBounds now generate blocks with at max 2 outcoming
edges. Huge example was implemented on language L (list reverse)
and tested.