Generic intermediate representation for code analysis door X. Li