A unifying theory of control dependence and its application to arbitrary program structures